<!doctype html><html lang=en><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>Docker Compose release notes | Docker Docs
</title><meta name=description content="Release notes for Docker Compose"><meta name=keywords content="[release notes,compose]"><link rel=canonical href="release-notes.html"><link rel=icon type=image/x-icon href="../assets/favicons/docs@2x.ico" sizes=129x128><link rel=apple-touch-icon type=image/x-icon href="../assets/favicons/docs@2x.ico" sizes=129x128><meta name=msapplication-TileImage content="https://docs.docker.com/assets/favicons/docs@2x.ico"><meta name=theme-color content="#2496ed"><meta name=twitter:title itemprop="title name" content="Docker Compose release notes"><meta name=twitter:description property="og:description" itemprop=description content="Release notes for Docker Compose"><meta name=twitter:card content="summary_large_image"><meta name=twitter:domain content="https://docs.docker.com"><meta name=twitter:site content="@docker_docs"><meta name=twitter:url content="https://twitter.com/docker_docs"><meta name=twitter:image:src content="https://docs.docker.com/assets/images/thumbnail.webp"><meta name=twitter:image:alt content="Docker Documentation"><meta property="og:title" content="Docker Compose release notes"><meta property="og:description" content="Release notes for Docker Compose"><meta property="og:type" content="website"><meta property="og:updated_time" itemprop=dateUpdated content="2024-02-21 11:32:11 +0100 +0100"><meta property="og:image" itemprop="image primaryImageOfPage" content="https://docs.docker.com/assets/images/thumbnail.webp"><meta property="og:locale" content="en_US"><meta property="og:url" content="https://docs.docker.com/compose/release-notes/"><meta property="og:site_name" content="Docker Documentation"><meta property="article:published_time" itemprop=datePublished content="2024-02-21 11:32:11 +0100 +0100"><script type=application/ld+json>{"@context":"https://schema.org","@type":"WebPage","headline":"\"Docker Compose release notes\"","description":"\"Release notes for Docker Compose\"","url":"https:\/\/docs.docker.com\/compose\/release-notes\/"}</script><script src=https://cdn.cookielaw.org/scripttemplates/otSDKStub.js type=text/javascript data-domain-script=8e0ebfd9-035d-4ec2-9b2f-a2de9c09f906></script><script type=text/javascript>function OptanonWrapper(){}</script><script>(function(e,t,n,s,o){e[s]=e[s]||[],e[s].push({"gtm.start":(new Date).getTime(),event:"gtm.js"});var a=t.getElementsByTagName(n)[0],i=t.createElement(n),r=s!="dataLayer"?"&l="+s:"";i.async=!0,i.src="https://www.googletagmanager.com/gtm.js?id="+o+r,a.parentNode.insertBefore(i,a)})(window,document,"script","dataLayer","GTM-WL2QLG5")</script><script>(function(e,t,n,s,o,i){e.hj=e.hj||function(){(e.hj.q=e.hj.q||[]).push(arguments)},e._hjSettings={hjid:3169877,hjsv:6},o=t.getElementsByTagName("head")[0],i=t.createElement("script"),i.async=1,i.src=n+e._hjSettings.hjid+s+e._hjSettings.hjsv,o.appendChild(i)})(window,document,"https://static.hotjar.com/c/hotjar-",".js?sv=")</script><link href="../assets/fonts/RobotoFlex.woff2" rel=preload as=font type=font/woff2 crossorigin><style>body>img{display:none}</style><link href="../css/styles.min.8767cc26123e21700c497beebf1cbd8dfdfec3499469fd8793a873c11b567264.css" rel=stylesheet><script>(()=>{function t(){let e=localStorage.getItem("theme-preference");return e||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")}var e=t();document.firstElementChild.className=e==="dark"?"dark":"light",localStorage.setItem("theme-preference",e)})()</script><script defer src="../scripts.js"></script><link rel=preconnect href=https://3XRLW0LZH9-dsn.algolia.net crossorigin></head><body class="bg-background-light text-base dark:bg-background-dark dark:text-white"><header class="sticky top-0 z-20 h-16 px-4 text-white bg-gradient-to-r from-accent-light to-blue-light-500 dark:from-accent-dark dark:to-blue-dark-100"><div class="mx-auto flex h-full max-w-[1400px] items-center justify-between"><div class="flex h-full items-center gap-8 md:gap-2"><button x-data @click="() => {
      $store.showSidebar = ! $store.showSidebar;
      const sidebar = document.querySelector('#sidebar');
      if ($store.showSidebar) {
        sidebar.classList.replace('md:hidden', 'md:block');
      } else {
        sidebar.classList.replace('md:block', 'md:hidden');
      }
      }" class="icon-svg hidden px-4 md:block" aria-label=Menu><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M150-240q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T150-3e2h660q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T810-240H150zm0-210q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T150-510h660q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T810-450H150zm0-210q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T150-720h660q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T810-660H150z"/></svg></button><div><a title="Docker Docs home page" href="../index.html"><div><svg width="92" height="33" viewBox="0 0 92 33" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M31.4783 13.9171C30.6936 13.3542 28.6325 13.1137 27.1335 13.5441 27.0527 11.9527 26.2826 10.6119 24.8747 9.44209L24.3529 9.06908 24.0051 9.62859C23.3219 10.7333 23.0351 12.2054 23.1366 13.5441 23.2173 14.3684 23.4865 15.2954 24.0051 15.9686 22.0548 17.1748 20.2566 16.9011 12.2938 16.9011H.00279151C-.0334407 18.818.256417 22.505 2.4552 25.5056 2.69847 25.8367 2.96452 26.1578 3.25334 26.4668c1.7878 1.9092 4.48969 3.3085 8.53006 3.313C17.9471 29.7853 23.2277 26.234 26.4399 17.6471 27.4969 17.6659 30.2867 17.8491 31.6522 15.0361 31.6853 14.9886 32 14.2901 32 14.2901L31.4783 13.9171zM8.02461 11.9395H4.56805v3.6848H8.02461V11.9395zm4.46589.0H9.03394v3.6848H12.4905V11.9395zm4.4659.0H13.4998v3.6848h3.4566V11.9395zm4.4659.0H17.9657v3.6848h3.4566V11.9395zm-17.86461.0H.102171v3.6848H3.55873L3.55769 11.9395zM8.02357 7.28461H4.56702V10.9694H8.02357V7.28461zm4.46593.0H9.0329V10.9694h3.4566V7.28461zm4.4658.0H13.4988V10.9694h3.4565V7.28461zm0-4.65485H13.4988V6.31458h3.4565V2.62976z" fill="#fff"/><path d="M78.9658 8.41589C78.4538 8.41589 78.0459 8.81327 78.0459 9.30828 78.0459 9.81422 78.4538 10.2116 78.9658 10.2116 79.4827 10.2116 79.8801 9.81422 79.8801 9.30828 79.8797 8.81327 79.4823 8.41589 78.9658 8.41589zM78.9711 10.0216C78.5685 10.0216 78.2744 9.70606 78.2744 9.30868 78.2744 8.91697 78.5684 8.59575 78.9658 8.59575 79.3628 8.59575 79.6512 8.91697 79.6512 9.31435 79.6512 9.70606 79.3628 10.0216 78.9711 10.0216z" fill="#fff"/><path d="M79.1725 9.33586V9.32492C79.281 9.29211 79.3572 9.21636 79.3572 9.11793 79.3572 9.03083 79.3191 8.95995 79.2701 8.92227 79.2049 8.8842 79.1287 8.85706 78.9598 8.85706 78.8132 8.85706 78.6985 8.86799 78.6171 8.8846V9.77699H78.8241V9.41768H78.9217C79.0364 9.41768 79.0907 9.46143 79.1069 9.55906 79.134 9.66275 79.1502 9.74418 79.1777 9.77699H79.4009C79.3791 9.74418 79.3625 9.68989 79.3357 9.55379 79.3082 9.43348 79.2592 9.36826 79.1725 9.33586zM78.9274 9.27064H78.8298V9.01504C78.8517 9.00937 78.8893 9.0037 78.944 9.0037 79.0749 9.0037 79.1344 9.05838 79.1344 9.14021 79.134 9.23256 79.0416 9.27064 78.9274 9.27064z" fill="#fff"/><path d="M41.5015 10.32C42.47 10.32 43.285 9.9708 43.9785 9.27042 44.6631 8.57936 45.003 7.73518 45.003 6.73747V.752051C45.003.560855 44.9402.400849 44.8122.27568 44.6842.150511 44.5307.0869141 44.3463.0869141 44.158.0869141 44.0041.150511 43.8809.27568 43.7574.400849 43.697.560855 43.697.752051V3.94284C43.0639 3.41949 42.3327 3.15537 41.5015 3.15537 40.5354 3.15537 39.7086 3.50415 39.0244 4.20493 38.3399 4.90288 38 5.74746 38 6.73788 38 7.72829 38.3423 8.57045 39.0244 9.27082 39.7086 9.96877 40.533 10.32 41.5015 10.32zM39.4806 5.86736C39.5948 5.59394 39.7507 5.35778 39.946 5.15524 40.1416 4.9523 40.3746 4.79189 40.6399 4.67198 40.9076 4.55168 41.194 4.49294 41.5035 4.49294S42.0925 4.55168 42.3603 4.67198C42.628 4.79229 42.8585 4.9527 43.0566 5.15767 43.2547 5.36264 43.4106 5.60082 43.5244 5.86979 43.6387 6.1412 43.6966 6.4288 43.6966 6.73545 43.6966 7.04209 43.6383 7.33213 43.5244 7.6011V7.60596C43.4102 7.87736 43.2543 8.11554 43.0566 8.31808 42.8589 8.52346 42.626 8.68346 42.3603 8.80377 42.0925 8.92408 41.8085 8.98281 41.5035 8.98281S40.9076 8.92408 40.6399 8.80377C40.3721 8.68346 40.1416 8.52305 39.946 8.32011 39.7503 8.11716 39.5944 7.87898 39.4806 7.60798 39.3663 7.33456 39.3084 7.04452 39.3084 6.73788 39.308 6.43123 39.3663 6.1412 39.4806 5.86736z" fill="#fff"/><path d="M72.9696 8.97333C72.9696 8.78699 72.9092 8.62212 72.7853 8.49695 72.6621 8.37179 72.5062 8.30819 72.3198 8.30819 72.157 8.31305 72.0124 8.36692 71.8892 8.47548 71.6936 8.64521 71.4817 8.77484 71.2512 8.8599 71.0207 8.94497 70.7692 8.9871 70.4946 8.9871 70.2523 8.9871 70.0194 8.94943 69.7982 8.87165 69.5767 8.79388 69.3701 8.68774 69.1858 8.5484 68.9994 8.40905 68.839 8.24419 68.7017 8.04853 68.5644 7.85531 68.4595 7.64062 68.3898 7.40487H73.3418C73.5253 7.40487 73.6793 7.34127 73.8073 7.2161S73.9981 6.93093 73.9981 6.73973c0-.49541-.0862999999999943-.95517-.256-1.37726C73.5719 4.93795 73.3131 4.55353 72.9736 4.20921L72.9692 4.20678C72.2777 3.50883 71.4509 3.15723 70.4921 3.15723 69.5325 3.15723 68.6993 3.5064 68.0147 4.20678 67.3301 4.90473 66.9902 5.74932 66.9902 6.73973S67.3325 8.5723 68.0147 9.27268C68.6993 9.97062 69.5236 10.3222 70.4921 10.3222 71.372 10.3222 72.1331 10.0322 72.7804 9.45212 72.906 9.31966 72.9696 9.15966 72.9696 8.97333zM68.6924 5.43093C68.8301 5.2377 68.9925 5.07 69.1793 4.93106 69.368 4.79212 69.5726 4.68558 69.7986 4.60781 70.0243 4.53003 70.2547 4.49236 70.4925 4.49236 70.7299 4.49236 70.9604 4.53003 71.1836 4.60781 71.4072 4.68558 71.6126 4.79171 71.7961 4.93106 71.9824 5.07 72.1452 5.23527 72.2826 5.43093 72.4223 5.62415 72.5272 5.83884 72.5997 6.07459H68.3853C68.4526 5.84127 68.555 5.62658 68.6924 5.43093z" fill="#fff"/><path d="M75.3696 10.3222C75.5531 10.3222 75.7026 10.2562 75.8278 10.1265 75.9562 9.99692 76.0186 9.83894 76.0186 9.65747V6.74011c0-.3111.0582999999999885-.60357.1721-.8774C76.305 5.58928 76.4609 5.35312 76.6586 5.15058 76.8571 4.94764 77.0896 4.78723 77.3549 4.67178 77.6227 4.5539 77.9071 4.49476 78.2121 4.49476 78.5167 4.49476 78.8055 4.54904 79.0688 4.65517 79.1733 4.70216 79.2645 4.72606 79.3435 4.72606 79.4346 4.72606 79.5205 4.70945 79.5995 4.67421 79.6785 4.63897 79.7485 4.59157 79.8069 4.53041 79.8652 4.46924 79.9114 4.39835 79.9466 4.31572 79.9814 4.23551 80.0001 4.14842 80.0001 4.05404 80.0001 3.87013 79.9417 3.72147 79.8255 3.60602H79.8279C79.7117 3.49058 79.5646 3.40065 79.3876 3.33462 79.2106 3.26859 79.0174 3.22363 78.8055 3.19771 78.5957 3.17178 78.398 3.16003 78.2145 3.16003 77.7977 3.16003 77.4064 3.22849 77.0386 3.365 76.6708 3.50192 76.3305 3.69757 76.0186 3.95236V3.82517C76.0186 3.64127 75.9558 3.48571 75.8278 3.35568 75.7002 3.22606 75.5487 3.16003 75.3696 3.16003 75.1898 3.16003 75.0318 3.22606 74.9042 3.35568 74.7758 3.48531 74.713 3.64329 74.713 3.82517v5.8323C74.713 9.84137 74.7758 9.99692 74.9042 10.1265 75.0318 10.2562 75.1857 10.3222 75.3696 10.3222z" fill="#fff"/><path d="M52.4904 5.3649C52.3203 4.94281 52.0667 4.55596 51.7244 4.20678 51.0329 3.50883 50.2066 3.15723 49.2473 3.15723 48.2881 3.15723 47.4545 3.5064 46.7703 4.20678 46.0857 4.90473 45.7458 5.74932 45.7458 6.73973S46.0881 8.5723 46.7703 9.27268C47.4549 9.97062 48.2788 10.3222 49.2473 10.3222 50.2159 10.3222 51.0309 9.97305 51.7244 9.27268 52.409 8.58161 52.7488 7.73743 52.7488 6.73973 52.744 6.24472 52.6581 5.78699 52.4904 5.3649zM51.2703 7.60052V7.60538C51.1561 7.87678 51.0001 8.11497 50.8024 8.31751 50.6043 8.52288 50.3718 8.68288 50.1061 8.80319 49.8408 8.9235 49.5544 8.98224 49.2494 8.98224 48.9443 8.98224 48.6535 8.9235 48.3857 8.80319 48.118 8.68288 47.8875 8.52247 47.6918 8.31953 47.4962 8.11659 47.3402 7.8784 47.2264 7.6074 47.1122 7.33398 47.0543 7.04394 47.0543 6.7373 47.0543 6.43066 47.1126 6.14062 47.2264 5.86719 47.3406 5.59376 47.4966 5.35761 47.6918 5.15507 47.8875 4.95212 48.1204 4.79171 48.3857 4.67181 48.6535 4.5515 48.9399 4.49276 49.2494 4.49276 49.5588 4.49276 49.8383 4.5515 50.1061 4.67181S50.6043 4.95253 50.8024 5.1575C51.0005 5.36247 51.1565 5.60065 51.2703 5.86962 51.3845 6.14102 51.4425 6.42863 51.4425 6.73527 51.4429 7.04192 51.3845 7.33195 51.2703 7.60052z" fill="#fff"/><path d="M63.628 6.08918 66.2472 4.34856C66.4141 4.23352 66.4955 4.05731 66.4963 3.82034 66.4959 3.73163 66.4777 3.64737 66.4428 3.56798 66.408 3.48777 66.3614 3.41486 66.3031 3.35328 66.2448 3.29212 66.1751 3.24229 66.0957 3.20948 66.0167 3.17667 65.9304 3.15763 65.8397 3.15763 65.7092 3.15763 65.593 3.19085 65.4905 3.2589L61.7516 5.74689V.75674C61.7516.567974 61.6889.409993 61.5609.280369 61.4329.150744 61.2814.0847168 61.1023.0847168 60.9233.0847168 60.7649.150744 60.6365.280369 60.5085.409993 60.4457.567974 60.4457.75674V9.64778C60.4457 9.83168 60.5085 9.98966 60.6365 10.1217 60.7645 10.2538 60.9184 10.3198 61.1023 10.3198S61.4353 10.2538 61.5609 10.1217C61.6889 9.98966 61.7516 9.83168 61.7516 9.64778V7.33884L62.5152 6.82723l2.8894 3.31797C65.5209 10.2607 65.6675 10.3174 65.8421 10.3174 65.9329 10.3174 66.0191 10.3008 66.0981 10.2655 66.1771 10.2323 66.2472 10.1829 66.3055 10.1217 66.3639 10.0606 66.4104 9.98966 66.4453 9.90703 66.4801 9.82682 66.4987 9.73973 66.4987 9.65223 66.4987 9.47764 66.4384 9.3221 66.3173 9.18518l-2.6893-3.096z" fill="#fff"/><path d="M56.9841 10.3247C57.8595 10.3247 58.621 10.0346 59.2659 9.45457 59.4032 9.31319 59.4733 9.15035 59.4733 8.96159 59.4733 8.77282 59.4126 8.60998 59.2894 8.48522 59.1659 8.36005 59.0099 8.29645 58.824 8.29645 58.6656 8.30131 58.5283 8.3483 58.412 8.43782 58.2026 8.62173 57.9838 8.75864 57.7485 8.8506 57.5156 8.94255 57.262 8.98751 56.9849 8.98751 56.6799 8.98751 56.3959 8.92837 56.1282 8.81049 55.8604 8.69262 55.6275 8.53221 55.4274 8.33169 55.2273 8.13118 55.0689 7.89056 54.9547 7.61957 54.8404 7.34614 54.7825 7.05368 54.7825 6.74217 54.7825 6.43067 54.8409 6.1386 54.9547 5.86477 55.0689 5.59135 55.2269 5.35519 55.4274 5.15265V5.15022C55.6275 4.94727 55.8604 4.78686 56.1282 4.67142 56.3959 4.55354 56.6799 4.4944 56.9849 4.4944 57.2596 4.4944 57.5136 4.54139 57.7485 4.63577 57.9814 4.73015 58.205 4.86909 58.4165 5.05097 58.542 5.15224 58.6842 5.20409 58.8426 5.20409 59.0314 5.20409 59.1849 5.1405 59.3084 5.0133 59.432 4.88611 59.4924 4.7257 59.4924 4.5345 59.4924 4.34371 59.4178 4.16669 59.2663 4.02977 58.6239 3.4497 57.8623 3.15967 56.9845 3.15967c-.966099999999997.0-1.7929.34917-2.477 1.04955C53.8229 4.90717 53.483 5.75135 53.483 6.74217 53.483 7.73258 53.8253 8.57474 54.5075 9.27512 55.1912 9.97306 56.0156 10.3247 56.9841 10.3247z" fill="#fff"/><path d="M44.774 32.4167C43.578 32.4167 42.497 32.1407 41.531 31.5887 40.5803 31.0214 39.8213 30.2547 39.254 29.2887 38.702 28.3227 38.426 27.234 38.426 26.0227s.253-2.2923.759-3.243C39.7063 21.8137 40.4117 21.0547 41.301 20.5027 42.1903 19.9354 43.1947 19.6517 44.314 19.6517 45.2187 19.6517 46.0543 19.8434 46.821 20.2267 47.5877 20.5947 48.2317 21.1007 48.753 21.7447v-6.21C48.753 15.182 48.8603 14.8984 49.075 14.6837 49.305 14.469 49.5887 14.3617 49.926 14.3617 50.2787 14.3617 50.5623 14.469 50.777 14.6837S51.099 15.182 51.099 15.5347v10.488C51.099 27.234 50.8153 28.3227 50.248 29.2887 49.696 30.2547 48.9447 31.0214 47.994 31.5887 47.0433 32.1407 45.97 32.4167 44.774 32.4167zm0-2.07C45.556 30.3467 46.2537 30.1627 46.867 29.7947 47.4803 29.4114 47.9633 28.89 48.316 28.2307 48.6687 27.5714 48.845 26.8354 48.845 26.0227 48.845 25.1947 48.6687 24.4587 48.316 23.8147 47.9633 23.1707 47.4803 22.6647 46.867 22.2967 46.2537 21.9134 45.556 21.7217 44.774 21.7217 44.0073 21.7217 43.3097 21.9134 42.681 22.2967 42.0677 22.6647 41.577 23.1707 41.209 23.8147 40.8563 24.4587 40.68 25.1947 40.68 26.0227 40.68 26.8354 40.8563 27.5714 41.209 28.2307 41.577 28.89 42.0677 29.4114 42.681 29.7947 43.3097 30.1627 44.0073 30.3467 44.774 30.3467zm15.1719 2.07c-1.242.0-2.3384-.268299999999996-3.289-.805-.950699999999998-.552-1.702-1.3033-2.254-2.254C53.8662 28.3917 53.5979 27.2877 53.5979 26.0457c0-1.2573.268299999999996-2.3613.805-3.312.552-.965999999999998 1.3033-1.7173 2.254-2.254C57.6075 19.9277 58.7039 19.6517 59.9459 19.6517c1.2266.0 2.3153.276 3.266.827999999999999C64.1625 21.0164 64.9062 21.7677 65.4429 22.7337 65.9949 23.6844 66.2709 24.7884 66.2709 26.0457c0 1.242-.2684 2.346-.804999999999993 3.312C64.9292 30.3084 64.1855 31.0597 63.2349 31.6117 62.2842 32.1484 61.1879 32.4167 59.9459 32.4167zm0-2.07c.7973.0 1.5026-.183999999999998 2.116-.552C62.6752 29.4267 63.1505 28.9207 63.4879 28.2767 63.8405 27.6327 64.0169 26.889 64.0169 26.0457S63.8405 24.4587 63.4879 23.8147C63.1505 23.1554 62.6752 22.6417 62.0619 22.2737 61.4485 21.9057 60.7432 21.7217 59.9459 21.7217 59.1485 21.7217 58.4432 21.9057 57.8299 22.2737 57.2165 22.6417 56.7335 23.1554 56.3809 23.8147 56.0282 24.4587 55.8519 25.2024 55.8519 26.0457S56.0282 27.6327 56.3809 28.2767C56.7335 28.9207 57.2165 29.4267 57.8299 29.7947 58.4432 30.1627 59.1485 30.3467 59.9459 30.3467zm14.5205 2.07C73.2397 32.4167 72.1434 32.1407 71.1774 31.5887 70.2267 31.0214 69.4754 30.2624 68.9234 29.3117 68.3867 28.3457 68.1184 27.257 68.1184 26.0457 68.1184 24.8037 68.3867 23.6997 68.9234 22.7337 69.46 21.7677 70.196 21.0164 71.1314 20.4797 72.0667 19.9277 73.14 19.6517 74.3514 19.6517 75.256 19.6517 76.084 19.828 76.8354 20.1807 77.5867 20.518 78.2614 21.0317 78.8594 21.7217 79.0741 21.967 79.1507 22.22 79.0894 22.4807S78.8594 22.9714 78.5834 23.1707C78.3687 23.324 78.1311 23.3777 77.8704 23.3317 77.6097 23.2704 77.372 23.1324 77.1574 22.9177 76.406 22.1204 75.4707 21.7217 74.3514 21.7217 73.5694 21.7217 72.8794 21.9057 72.2814 22.2737 71.6834 22.6264 71.2157 23.1247 70.8784 23.7687 70.541 24.4127 70.3724 25.1717 70.3724 26.0457 70.3724 26.8737 70.541 27.6097 70.8784 28.2537 71.231 28.8977 71.714 29.4114 72.3274 29.7947 72.9407 30.1627 73.6537 30.3467 74.4664 30.3467 75.0031 30.3467 75.4707 30.2854 75.8694 30.1627 76.2834 30.0247 76.6591 29.8177 76.9964 29.5417 77.2417 29.3424 77.4947 29.235 77.7554 29.2197 78.0161 29.189 78.2461 29.258 78.4454 29.4267 78.706 29.6414 78.8517 29.8867 78.8824 30.1627 78.913 30.4234 78.821 30.661 78.6064 30.8757 77.5024 31.903 76.1224 32.4167 74.4664 32.4167zm11.6865.0C85.0795 32.4167 84.0829 32.2557 83.1629 31.9337 82.2582 31.5964 81.5529 31.1747 81.0469 30.6687 80.8169 30.4234 80.7172 30.1474 80.7479 29.8407 80.7939 29.5187 80.9472 29.258 81.2079 29.0587 81.5145 28.8134 81.8135 28.7137 82.1049 28.7597 82.4115 28.7904 82.6722 28.9207 82.8869 29.1507 83.1475 29.442 83.5615 29.718 84.1289 29.9787 84.7115 30.224 85.3555 30.3467 86.0609 30.3467 86.9502 30.3467 87.6249 30.201 88.0849 29.9097 88.5602 29.6184 88.8055 29.2427 88.8209 28.7827 88.8362 28.3227 88.6139 27.924 88.1539 27.5867 87.7092 27.2494 86.8889 26.9734 85.6929 26.7587 84.1442 26.452 83.0172 25.992 82.3119 25.3787 81.6219 24.7654 81.2769 24.014 81.2769 23.1247 81.2769 22.3427 81.5069 21.6987 81.9669 21.1927 82.4269 20.6714 83.0172 20.288 83.7379 20.0427 84.4585 19.782 85.2099 19.6517 85.9919 19.6517 87.0039 19.6517 87.9009 19.8127 88.6829 20.1347 89.4649 20.4567 90.0859 20.9014 90.5459 21.4687 90.7605 21.714 90.8602 21.9747 90.8449 22.2507 90.8295 22.5114 90.6992 22.7337 90.4539 22.9177 90.2085 23.0864 89.9172 23.14 89.5799 23.0787 89.2425 23.0174 88.9589 22.8794 88.7289 22.6647 88.3455 22.2967 87.9315 22.0437 87.4869 21.9057 87.0422 21.7677 86.5285 21.6987 85.9459 21.6987 85.2712 21.6987 84.6962 21.8137 84.2209 22.0437 83.7609 22.2737 83.5309 22.611 83.5309 23.0557 83.5309 23.3317 83.5999 23.5847 83.7379 23.8147 83.8912 24.0294 84.1825 24.2287 84.6119 24.4127 85.0412 24.5814 85.6699 24.75 86.4979 24.9187 87.6479 25.1487 88.5525 25.44 89.2119 25.7927 89.8865 26.1454 90.3695 26.5594 90.6609 27.0347 90.9522 27.4947 91.0979 28.0314 91.0979 28.6447 91.0979 29.35 90.9062 29.9864 90.5229 30.5537 90.1549 31.121 89.6029 31.5734 88.8669 31.9107 88.1462 32.248 87.2415 32.4167 86.1529 32.4167z" fill="#fff"/></svg></div></a></div><div><nav><ul class="box-content flex mt-1 gap-4 md:hidden"><li><a class="block py-1 px-2" href="../get-started/overview/index.html">Guides</a></li><li class=border-b-4><a class="block py-1 px-2" href="../manuals/index.html">Manuals</a></li><li><a class="block py-1 px-2" href="../app/working-with-app/index.html">Reference</a></li><li><a class="block py-1 px-2" href="../samples/index.html">Samples</a></li><li><a class="block py-1 px-2" href="../faq/index.html">FAQ</a></li></ul></nav></div></div><div class="flex items-center gap-6"><div id=docsearch></div><button aria-label="Theme switch" id=theme-switch class=svg-icon x-data="{ theme: localStorage.getItem('theme-preference') }" x-init="$watch('theme', value => {
        localStorage.setItem('theme-preference', value);
        document.firstElementChild.className = value;
      })" @click="theme = (theme === 'dark' ? 'light' : 'dark')">
<span class="icon-svg dark:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-280q-83 0-141.5-58.5T280-480t58.5-141.5T480-680t141.5 58.5T680-480t-58.5 141.5T480-280zM70-450q-12.75.0-21.375-8.675Q40-467.351 40-480.175 40-493 48.625-501.5T70-510h1e2q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T170-450H70zm720 0q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T790-510h1e2q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T890-450H790zM479.825-760Q467-760 458.5-768.625T450-790v-1e2q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T510-890v1e2q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625zm0 720Q467-40 458.5-48.625T450-70v-1e2q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T510-170v1e2q0 12.75-8.675 21.375Q492.649-40 479.825-40zM240-678l-57-56q-9-9-8.629-21.603.37-12.604 8.526-21.5 8.896-8.897 21.5-8.897Q217-786 226-777l56 57q8 9 8 21t-8 20.5-20.5 8.5-21.5-8zm494 495-56-57q-8-9-8-21.375T678.5-282q8.5-9 20.5-9t21 9l57 56q9 9 8.629 21.603-.37 12.604-8.526 21.5-8.896 8.897-21.5 8.897Q743-174 734-183zm-56-495q-9-9-9-21t9-21l56-57q9-9 21.603-8.629 12.604.37 21.5 8.526 8.897 8.896 8.897 21.5Q786-743 777-734l-57 56q-8 8-20.364 8-12.363.0-21.636-8zM182.897-182.897q-8.897-8.896-8.897-21.5Q174-217 183-226l57-56q8.8-9 20.9-9 12.1.0 20.709 9Q291-273 291-261t-9 21l-56 57q-9 9-21.603 8.629-12.604-.37-21.5-8.526z"/></svg></span>
<span class="icon-svg hidden dark:block"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-120q-150 0-255-105T120-480q0-135 79.5-229T408-830q20-5 34-1t22 15q8 10 7.5 25t-8.5 35q-9 23-14 47t-5 49q0 90 63 153t153 63q25 0 48.5-4.5T754-461t38-7 26 9 13 23-2 36q-27 121-121 200.5T480-120z"/></svg></span></button></div></div></header><main class=flex><div id=sidebar class="sticky top-16 flex h-screen shrink-0 grow flex-row-reverse overflow-y-scroll bg-background-light dark:bg-gray-dark-100 md:fixed md:z-10 md:hidden md:h-screen md:w-screen lg:grow-0"><nav class="text-sm py-4 hidden gap-4 pl-4 md:flex flex-col justify-evenly"><div class="text-gray-light dark:text-gray-dark">Main sections</div><div class="pl-2 underline-offset-8 decoration-2 hover:underline decoration-blue-light dark:decoration-blue-dark hover:opacity-75"><a href="../get-started/overview/index.html">Guides</a></div><div class="pl-2 underline-offset-8 decoration-2 hover:underline decoration-blue-light dark:decoration-blue-dark hover:opacity-75
underline"><a href="../manuals/index.html">Manuals</a></div><div class="pl-2 underline-offset-8 decoration-2 hover:underline decoration-blue-light dark:decoration-blue-dark hover:opacity-75"><a href="../app/working-with-app/index.html">Reference</a></div><div class="pl-2 underline-offset-8 decoration-2 hover:underline decoration-blue-light dark:decoration-blue-dark hover:opacity-75"><a href="../samples/index.html">Samples</a></div><div class="pl-2 underline-offset-8 decoration-2 hover:underline decoration-blue-light dark:decoration-blue-dark hover:opacity-75"><a href="../faq/index.html">FAQ</a></div></nav><hr><nav id=sectiontree class="text-sm w-[300px] md:w-full flex flex-col"><div class="hidden md:block p-4 text-gray-light dark:text-gray-dark">This section</div><ul><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../manuals/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../install/index.html" title="Get Docker"><span class="flex items-center gap-2">Get Docker</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Docker Desktop
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Install Docker Desktop
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/install/mac-install/index.html" title="Install on Mac"><span class="flex items-center gap-2">Install on Mac</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/mac/permission-requirements/index.html" title="Understand permission requirements for Mac"><span class="flex items-center gap-2">Understand permission requirements for Mac</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/install/windows-install/index.html" title="Install on Windows"><span class="flex items-center gap-2">Install on Windows</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/windows/permission-requirements/index.html" title="Understand permission requirements for Windows"><span class="flex items-center gap-2">Understand permission requirements for Windows</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/install/linux-install/index.html" title="Install on Linux"><span class="flex items-center gap-2">Install on Linux</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Installation per Linux distro
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/install/debian/index.html" title="Install on Debian"><span class="flex items-center gap-2">Install on Debian</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/install/fedora/index.html" title="Install on Fedora"><span class="flex items-center gap-2">Install on Fedora</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/install/ubuntu/index.html" title="Install on Ubuntu"><span class="flex items-center gap-2">Install on Ubuntu</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/install/archlinux/index.html" title="Install on Arch"><span class="flex items-center gap-2">Install on Arch</span></a></li></ul></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/get-started/index.html" title="Sign in"><span class="flex items-center gap-2">Sign in</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Explore Docker Desktop
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/use-desktop.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/use-desktop/container/index.html" title="Explore Containers"><span class="flex items-center gap-2">Explore Containers</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/use-desktop/images/index.html" title="Explore Images"><span class="flex items-center gap-2">Explore Images</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/use-desktop/volumes/index.html" title="Explore Volumes"><span class="flex items-center gap-2">Explore Volumes</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/use-desktop/builds/index.html" title="Explore Builds"><span class="flex items-center gap-2">Explore Builds</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/use-desktop/resource-saver/index.html" title="Resource Saver mode"><span class="flex items-center gap-2">Resource Saver mode</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/use-desktop/pause/index.html" title="Pause Docker Desktop"><span class="flex items-center gap-2">Pause Docker Desktop</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Hardened Docker Desktop
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/hardened-desktop/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Settings Management
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/hardened-desktop/settings-management/index.html" title="What is Settings Management?"><span class="flex items-center gap-2">What is Settings Management?</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/hardened-desktop/settings-management/configure/index.html" title="Configure Settings Management"><span class="flex items-center gap-2">Configure Settings Management</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Enhanced Container Isolation
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/hardened-desktop/enhanced-container-isolation/index.html" title="What is Enhanced Container Isolation?"><span class="flex items-center gap-2">What is Enhanced Container Isolation?</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/hardened-desktop/enhanced-container-isolation/how-eci-works/index.html" title="How does it work?"><span class="flex items-center gap-2">How does it work?</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/hardened-desktop/enhanced-container-isolation/features-benefits/index.html" title="Key features and benefits"><span class="flex items-center gap-2">Key features and benefits</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/hardened-desktop/enhanced-container-isolation/config/index.html" title="Advanced configuration options (Beta)"><span class="flex items-center gap-2">Advanced configuration options (Beta)</span></a></li></ul></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Dev Environments (Beta)
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/dev-environments/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/dev-environments/create-dev-env/index.html" title="Launch a dev environment"><span class="flex items-center gap-2">Launch a dev environment</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/dev-environments/set-up/index.html" title="Set up a dev environment"><span class="flex items-center gap-2">Set up a dev environment</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/dev-environments/share/index.html" title="Distribute your dev environment"><span class="flex items-center gap-2">Distribute your dev environment</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/dev-environments/dev-cli/index.html" title="Use the docker dev CLI plugin"><span class="flex items-center gap-2">Use the docker dev CLI plugin</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/containerd/index.html" title="containerd image store"><span class="flex items-center gap-2">containerd image store</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/wasm/index.html" title="Wasm workloads (Beta)"><span class="flex items-center gap-2">Wasm workloads (Beta)</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/synchronized-file-sharing/index.html" title="Synchronized file shares 

New"><span class="flex items-center gap-2">Synchronized file shares
<span class="not-prose px-1 rounded-sm bg-violet-light dark:bg-violet-dark text-white text-xs">New</span></span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">WSL
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-for-windows/wsl/index.html" title="Set up WSL 2 on Docker Desktop for Windows"><span class="flex items-center gap-2">Set up WSL 2 on Docker Desktop for Windows</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/wsl/use-wsl/index.html" title="Use WSL"><span class="flex items-center gap-2">Use WSL</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/wsl/best-practices/index.html" title="Best practices"><span class="flex items-center gap-2">Best practices</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/gpu/index.html" title="GPU support"><span class="flex items-center gap-2">GPU support</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Additional resources
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/kubernetes.html" title="Deploy on Kubernetes"><span class="flex items-center gap-2">Deploy on Kubernetes</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/backup-and-restore/index.html" title="Back up and restore data"><span class="flex items-center gap-2">Back up and restore data</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/networking/index.html" title="Explore networking features"><span class="flex items-center gap-2">Explore networking features</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/vm-vdi/index.html" title="Run Docker Desktop for Windows in a VM or VDI environment"><span class="flex items-center gap-2">Run Docker Desktop for Windows in a VM or VDI environment</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/allow-list/index.html" title="Allowlist for Docker Desktop"><span class="flex items-center gap-2">Allowlist for Docker Desktop</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Change settings
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/settings/mac/index.html" title="On Mac"><span class="flex items-center gap-2">On Mac</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/settings/windows/index.html" title="On Windows"><span class="flex items-center gap-2">On Windows</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/settings/linux/index.html" title="On Linux"><span class="flex items-center gap-2">On Linux</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Troubleshoot and diagnose
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/troubleshoot/overview/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/troubleshoot/topics/index.html" title="Troubleshoot topics"><span class="flex items-center gap-2">Troubleshoot topics</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/troubleshoot/workarounds/index.html" title="Workarounds for common problems"><span class="flex items-center gap-2">Workarounds for common problems</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/troubleshoot/known-issues/index.html" title="Known issues"><span class="flex items-center gap-2">Known issues</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/uninstall/index.html" title="Uninstall Docker Desktop"><span class="flex items-center gap-2">Uninstall Docker Desktop</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/feedback.html" title="Give feedback"><span class="flex items-center gap-2">Give feedback</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/release-notes.html" title="Release notes"><span class="flex items-center gap-2">Release notes</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Previous versions
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/previous-versions/3.x-windows/index.html" title="Desktop for Windows 3.x"><span class="flex items-center gap-2">Desktop for Windows 3.x</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/previous-versions/3.x-mac/index.html" title="Desktop for Mac 3.x"><span class="flex items-center gap-2">Desktop for Mac 3.x</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/previous-versions/2.x-windows/index.html" title="Desktop for Windows 2.x"><span class="flex items-center gap-2">Desktop for Windows 2.x</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/previous-versions/2.x-mac/index.html" title="Desktop for Mac 2.x"><span class="flex items-center gap-2">Desktop for Mac 2.x</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/previous-versions/edge-releases-windows/index.html" title="Windows edge releases"><span class="flex items-center gap-2">Windows edge releases</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/previous-versions/edge-releases-mac/index.html" title="Mac edge releases"><span class="flex items-center gap-2">Mac edge releases</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/previous-versions/archive-windows/index.html" title="Older versions for Windows"><span class="flex items-center gap-2">Older versions for Windows</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/previous-versions/archive-mac/index.html" title="Older versions for Mac"><span class="flex items-center gap-2">Older versions for Mac</span></a></li></ul></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Docker Extensions
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions/index.html" title="What are Docker Extensions?"><span class="flex items-center gap-2">What are Docker Extensions?</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Extensions on Docker Desktop
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions/marketplace/index.html" title="Manage Marketplace extensions"><span class="flex items-center gap-2">Manage Marketplace extensions</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions/non-marketplace/index.html" title="Manage non-Marketplace extensions"><span class="flex items-center gap-2">Manage non-Marketplace extensions</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions/settings-feedback/index.html" title="Change settings and give feedback"><span class="flex items-center gap-2">Change settings and give feedback</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions/private-marketplace/index.html" title="Configure a private marketplace (Beta)"><span class="flex items-center gap-2">Configure a private marketplace (Beta)</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Extensions SDK
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/process/index.html" title="The build and publish process"><span class="flex items-center gap-2">The build and publish process</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/quickstart/index.html" title=Quickstart><span class="flex items-center gap-2">Quickstart</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Part one: Build
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/build/minimal-frontend-extension/index.html" title="Create a simple extension"><span class="flex items-center gap-2">Create a simple extension</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/build/frontend-extension-tutorial/index.html" title="Create an advanced frontend extension"><span class="flex items-center gap-2">Create an advanced frontend extension</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/build/backend-extension-tutorial/index.html" title="Add a backend to your extension"><span class="flex items-center gap-2">Add a backend to your extension</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Part two: Publish
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/extensions/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/extensions/labels/index.html" title=Labels><span class="flex items-center gap-2">Labels</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/extensions/validate/index.html" title=Validate><span class="flex items-center gap-2">Validate</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/extensions/DISTRIBUTION/index.html" title="Package and release your extension"><span class="flex items-center gap-2">Package and release your extension</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/extensions/share/index.html" title="Generate a share link"><span class="flex items-center gap-2">Generate a share link</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/extensions/publish/index.html" title="Publish in the marketplace"><span class="flex items-center gap-2">Publish in the marketplace</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/extensions/multi-arch/index.html" title="Build multi-arch extensions"><span class="flex items-center gap-2">Build multi-arch extensions</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Architecture
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/architecture/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/architecture/metadata/index.html" title=Metadata><span class="flex items-center gap-2">Metadata</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/architecture/security/index.html" title=Security><span class="flex items-center gap-2">Security</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Design and UI styling
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/design/index.html" title="UI styling guidelines"><span class="flex items-center gap-2">UI styling guidelines</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/design/design-guidelines/index.html" title=Guidelines><span class="flex items-center gap-2">Guidelines</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/design/design-principles/index.html" title="Docker design principles"><span class="flex items-center gap-2">Docker design principles</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/design/mui-best-practices/index.html" title="MUI best practices"><span class="flex items-center gap-2">MUI best practices</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Developer Guides
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/guides/invoke-host-binaries/index.html" title="Invoke host binaries"><span class="flex items-center gap-2">Invoke host binaries</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/guides/use-docker-socket-from-backend/index.html" title="Use the Docker socket from the extension backend"><span class="flex items-center gap-2">Use the Docker socket from the extension backend</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/kubernetes/index.html" title="Interacting with Kubernetes"><span class="flex items-center gap-2">Interacting with Kubernetes</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/guides/oauth2-flow/index.html" title=Authentication><span class="flex items-center gap-2">Authentication</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Developer SDK tools
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/test-debug/index.html" title="Test and debug"><span class="flex items-center gap-2">Test and debug</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/continuous-integration/index.html" title="Continuous integration"><span class="flex items-center gap-2">Continuous integration</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/usage/index.html" title="CLI reference"><span class="flex items-center gap-2">CLI reference</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Extension APIs
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/api/overview/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/api/backend/index.html" title="Extension Backend"><span class="flex items-center gap-2">Extension Backend</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/api/docker/index.html" title=Docker><span class="flex items-center gap-2">Docker</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/api/dashboard/index.html" title=Dashboard><span class="flex items-center gap-2">Dashboard</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/api/dashboard-routes-navigation/index.html" title=Navigation><span class="flex items-center gap-2">Navigation</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/extensions-sdk/dev/api/reference/README/index.html" title="API Reference"><span class="flex items-center gap-2">API Reference</span></a></li></ul></li></ul></li></ul></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Docker Scout
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/quickstart/index.html" title=Quickstart><span class="flex items-center gap-2">Quickstart</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Explore Docker Scout
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/dashboard.html" title=Dashboard><span class="flex items-center gap-2">Dashboard</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/image-details-view/index.html" title="Image details view"><span class="flex items-center gap-2">Image details view</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/advisory-db-sources.html" title="Advisory database"><span class="flex items-center gap-2">Advisory database</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/data-handling/index.html" title="Data handling"><span class="flex items-center gap-2">Data handling</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Use Docker Scout
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/image-analysis/index.html" title="Image analysis"><span class="flex items-center gap-2">Image analysis</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/image-prefix/index.html" title="Specify artifact type or location"><span class="flex items-center gap-2">Specify artifact type or location</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/sbom/index.html" title=SBOM><span class="flex items-center gap-2">SBOM</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/env-vars/index.html" title="Environment variables"><span class="flex items-center gap-2">Environment variables</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Policy Evaluation
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/policy/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/policy/view/index.html" title="View policy status"><span class="flex items-center gap-2">View policy status</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/policy/configure/index.html" title="Configure policies"><span class="flex items-center gap-2">Configure policies</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/policy/ci/index.html" title="Policy Evaluation in CI"><span class="flex items-center gap-2">Policy Evaluation in CI</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/policy/remediation/index.html" title=Remediation><span class="flex items-center gap-2">Remediation</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Integrations
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Environment monitoring
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/environment/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/environment/sysdig/index.html" title=Sysdig><span class="flex items-center gap-2">Sysdig</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/environment/cli/index.html" title=Generic><span class="flex items-center gap-2">Generic</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Container registries
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/registry/artifactory/index.html" title=Artifactory><span class="flex items-center gap-2">Artifactory</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/registry/ecr/index.html" title="Elastic Container Registry"><span class="flex items-center gap-2">Elastic Container Registry</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/registry/acr/index.html" title="Azure Container Registry"><span class="flex items-center gap-2">Azure Container Registry</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Continuous integration
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/ci/gha/index.html" title="GitHub Actions"><span class="flex items-center gap-2">GitHub Actions</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/ci/gitlab/index.html" title=GitLab><span class="flex items-center gap-2">GitLab</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/ci/azure/index.html" title="Microsoft Azure DevOps Pipelines"><span class="flex items-center gap-2">Microsoft Azure DevOps Pipelines</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/ci/circle-ci/index.html" title="Circle CI"><span class="flex items-center gap-2">Circle CI</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/ci/jenkins/index.html" title=Jenkins><span class="flex items-center gap-2">Jenkins</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Code quality
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/code-quality/sonarqube/index.html" title=SonarQube><span class="flex items-center gap-2">SonarQube</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Source code management
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/integrations/source-code-management/github/index.html" title=GitHub><span class="flex items-center gap-2">GitHub</span></a></li></ul></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../scout/release-notes/index.html" title="Release notes"><span class="flex items-center gap-2">Release notes</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Docker Engine
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Install
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/centos/index.html" title=CentOS><span class="flex items-center gap-2">CentOS</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/debian/index.html" title=Debian><span class="flex items-center gap-2">Debian</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/fedora/index.html" title=Fedora><span class="flex items-center gap-2">Fedora</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/rhel/index.html" title="RHEL (s390x)"><span class="flex items-center gap-2">RHEL (s390x)</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/sles/index.html" title=SLES><span class="flex items-center gap-2">SLES</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/ubuntu/index.html" title=Ubuntu><span class="flex items-center gap-2">Ubuntu</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/raspberry-pi-os/index.html" title="Raspberry Pi OS (32-bit)"><span class="flex items-center gap-2">Raspberry Pi OS (32-bit)</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/binaries/index.html" title=Binaries><span class="flex items-center gap-2">Binaries</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/linux-postinstall.html" title="Post-installation steps"><span class="flex items-center gap-2">Post-installation steps</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/install/troubleshoot/index.html" title="Troubleshoot installation"><span class="flex items-center gap-2">Troubleshoot installation</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Storage
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/volumes/index.html" title=Volumes><span class="flex items-center gap-2">Volumes</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/bind-mounts/index.html" title="Bind mounts"><span class="flex items-center gap-2">Bind mounts</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/tmpfs/index.html" title="tmpfs mounts"><span class="flex items-center gap-2">tmpfs mounts</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/troubleshooting_volume_errors/index.html" title=Troubleshoot><span class="flex items-center gap-2">Troubleshoot</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Storage drivers
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/storagedriver/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/storagedriver/select-storage-driver/index.html" title="Select a storage driver"><span class="flex items-center gap-2">Select a storage driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/storagedriver/btrfs-driver/index.html" title="Use the Btrfs storage driver"><span class="flex items-center gap-2">Use the Btrfs storage driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/storagedriver/device-mapper-driver/index.html" title="Use the Device mapper storage driver"><span class="flex items-center gap-2">Use the Device mapper storage driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/userguide/storagedriver/overlayfs-driver/index.html" title="Use the OverlayFS storage driver"><span class="flex items-center gap-2">Use the OverlayFS storage driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/storagedriver/zfs-driver/index.html" title="Use the ZFS storage driver"><span class="flex items-center gap-2">Use the ZFS storage driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/storagedriver/vfs-driver/index.html" title="Use the VFS storage driver"><span class="flex items-center gap-2">Use the VFS storage driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/storagedriver/aufs-driver/index.html" title="Use the AUFS storage driver (deprecated)"><span class="flex items-center gap-2">Use the AUFS storage driver (deprecated)</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../storage/containerd/index.html" title="containerd snapshotters"><span class="flex items-center gap-2">containerd snapshotters</span></a></li></ul></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Networking
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/userguide/networking/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Network drivers
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/drivers/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/drivers/bridge/index.html" title=Bridge><span class="flex items-center gap-2">Bridge</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/overlay/index.html" title=Overlay><span class="flex items-center gap-2">Overlay</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/drivers/host/index.html" title=Host><span class="flex items-center gap-2">Host</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/drivers/ipvlan/index.html" title=IPvlan><span class="flex items-center gap-2">IPvlan</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/drivers/macvlan/index.html" title=Macvlan><span class="flex items-center gap-2">Macvlan</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/drivers/none/index.html" title="None (no networking)"><span class="flex items-center gap-2">None (no networking)</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/proxy/index.html" title="Configure Docker to use a proxy server"><span class="flex items-center gap-2">Configure Docker to use a proxy server</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/packet-filtering-firewalls/index.html" title="Packet filtering and firewalls"><span class="flex items-center gap-2">Packet filtering and firewalls</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/daemon/ipv6/index.html" title="Use IPv6"><span class="flex items-center gap-2">Use IPv6</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Networking tutorials
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/network-tutorial-standalone/index.html" title="Bridge network tutorial"><span class="flex items-center gap-2">Bridge network tutorial</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/network-tutorial-host/index.html" title="Host networking tutorial"><span class="flex items-center gap-2">Host networking tutorial</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/network-tutorial-overlay/index.html" title="Overlay networking tutorial"><span class="flex items-center gap-2">Overlay networking tutorial</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/network-tutorial-macvlan/index.html" title="Macvlan network tutorial"><span class="flex items-center gap-2">Macvlan network tutorial</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Legacy networking content
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../network/links/index.html" title="(Legacy) Container links"><span class="flex items-center gap-2">(Legacy) Container links</span></a></li></ul></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Containers
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../reference/run/index.html" title="Running containers"><span class="flex items-center gap-2">Running containers</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/resource_constraints/index.html" title="Configure resource constraints"><span class="flex items-center gap-2">Configure resource constraints</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/multi-service_container/index.html" title="Run multiple processes in a container"><span class="flex items-center gap-2">Run multiple processes in a container</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/start-containers-automatically/index.html" title="Start containers automatically"><span class="flex items-center gap-2">Start containers automatically</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">CLI
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/reference/commandline/cli/index.html" title="Use the Docker CLI"><span class="flex items-center gap-2">Use the Docker CLI</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/filter/index.html" title="Filter commands"><span class="flex items-center gap-2">Filter commands</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../go/formatting/index.html" title="Format command and log output"><span class="flex items-center gap-2">Format command and log output</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Manage resources
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/pruning.html" title="Prune unused objects"><span class="flex items-center gap-2">Prune unused objects</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/userguide/labels-custom-metadata/index.html" title=Labels><span class="flex items-center gap-2">Labels</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/context/working-with-contexts.html" title=Contexts><span class="flex items-center gap-2">Contexts</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Daemon
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/daemon/start/index.html" title="Start the daemon"><span class="flex items-center gap-2">Start the daemon</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/daemon.html" title="Configure the daemon"><span class="flex items-center gap-2">Configure the daemon</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/daemon/systemd/index.html" title="Configure with systemd"><span class="flex items-center gap-2">Configure with systemd</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/live-restore/index.html" title="Live restore"><span class="flex items-center gap-2">Live restore</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/daemon/troubleshoot/index.html" title=Troubleshoot><span class="flex items-center gap-2">Troubleshoot</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/daemon/remote-access/index.html" title="Remote access"><span class="flex items-center gap-2">Remote access</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/alternative-runtimes/index.html" title="Alternative container runtimes"><span class="flex items-center gap-2">Alternative container runtimes</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Engine plugins
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/extend/index.html" title="Managed plugin system"><span class="flex items-center gap-2">Managed plugin system</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/extend/plugins_authorization/index.html" title="Access authorization plugin"><span class="flex items-center gap-2">Access authorization plugin</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/extend/legacy_plugins/index.html" title="Extending Docker with plugins"><span class="flex items-center gap-2">Extending Docker with plugins</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/extend/plugins_network/index.html" title="Network plugins"><span class="flex items-center gap-2">Network plugins</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/extend/plugins_logging/index.html" title="Logging plugins"><span class="flex items-center gap-2">Logging plugins</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/extend/plugins_volume/index.html" title="Volume plugins"><span class="flex items-center gap-2">Volume plugins</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/extend/config/index.html" title="Plugin configuration"><span class="flex items-center gap-2">Plugin configuration</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/extend/plugin_api/index.html" title="Plugin API"><span class="flex items-center gap-2">Plugin API</span></a></li></ul></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Logs and metrics
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Container logs
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/index.html" title="View container logs"><span class="flex items-center gap-2">View container logs</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/configure/index.html" title="Configure logging drivers"><span class="flex items-center gap-2">Configure logging drivers</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/dual-logging/index.html" title="Use a remote logging driver"><span class="flex items-center gap-2">Use a remote logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/plugins/index.html" title="Use a logging driver plugin"><span class="flex items-center gap-2">Use a logging driver plugin</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/log_tags/index.html" title="Customize log driver output"><span class="flex items-center gap-2">Customize log driver output</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Logging drivers
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/local/index.html" title="Local file logging driver"><span class="flex items-center gap-2">Local file logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/json-file/index.html" title="JSON File logging driver"><span class="flex items-center gap-2">JSON File logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/gelf/index.html" title="Graylog Extended Format (GELF) logging driver"><span class="flex items-center gap-2">Graylog Extended Format (GELF) logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/syslog/index.html" title="Syslog logging driver"><span class="flex items-center gap-2">Syslog logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/awslogs/index.html" title="Amazon CloudWatch logs logging driver"><span class="flex items-center gap-2">Amazon CloudWatch logs logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/etwlogs/index.html" title="ETW logging driver"><span class="flex items-center gap-2">ETW logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/fluentd/index.html" title="Fluentd logging driver"><span class="flex items-center gap-2">Fluentd logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/gcplogs/index.html" title="Google Cloud logging driver"><span class="flex items-center gap-2">Google Cloud logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/journald/index.html" title="Journald logging driver"><span class="flex items-center gap-2">Journald logging driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/logging/splunk/index.html" title="Splunk logging driver"><span class="flex items-center gap-2">Splunk logging driver</span></a></li></ul></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/daemon/logs/index.html" title="Daemon logs"><span class="flex items-center gap-2">Daemon logs</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/containers/runmetrics/index.html" title="Runtime metrics"><span class="flex items-center gap-2">Runtime metrics</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../config/daemon/prometheus/index.html" title="Collect metrics with Prometheus"><span class="flex items-center gap-2">Collect metrics with Prometheus</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Security
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/rootless.html" title="Rootless mode"><span class="flex items-center gap-2">Rootless mode</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/non-events/index.html" title="Docker security non-events"><span class="flex items-center gap-2">Docker security non-events</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/https/index.html" title="Protect the Docker daemon socket"><span class="flex items-center gap-2">Protect the Docker daemon socket</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/certificates/index.html" title="Using certificates for repository client verification"><span class="flex items-center gap-2">Using certificates for repository client verification</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Use trusted images
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/trust/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/trust/trust_automation/index.html" title=Automation><span class="flex items-center gap-2">Automation</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/trust/trust_delegation/index.html" title=Delegations><span class="flex items-center gap-2">Delegations</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/trust/deploying_notary/index.html" title="Deploy Notary"><span class="flex items-center gap-2">Deploy Notary</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/trust/trust_key_mng/index.html" title="Manage content trust keys"><span class="flex items-center gap-2">Manage content trust keys</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/trust/trust_sandbox/index.html" title="Play in a content trust sandbox"><span class="flex items-center gap-2">Play in a content trust sandbox</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/antivirus/index.html" title="Antivirus software"><span class="flex items-center gap-2">Antivirus software</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/apparmor/index.html" title="AppArmor security profiles"><span class="flex items-center gap-2">AppArmor security profiles</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/seccomp/index.html" title="Seccomp security profiles"><span class="flex items-center gap-2">Seccomp security profiles</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/security/userns-remap/index.html" title="Isolate containers with a user namespace"><span class="flex items-center gap-2">Isolate containers with a user namespace</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Swarm mode
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/index.html" title="Swarm mode overview"><span class="flex items-center gap-2">Swarm mode overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/key-concepts/index.html" title="Swarm mode key concepts"><span class="flex items-center gap-2">Swarm mode key concepts</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Get started with swarm mode
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-tutorial/index.html" title="Swarm mode tutorial overview"><span class="flex items-center gap-2">Swarm mode tutorial overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-tutorial/create-swarm/index.html" title="Create a swarm"><span class="flex items-center gap-2">Create a swarm</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-tutorial/add-nodes/index.html" title="Add nodes to the swarm"><span class="flex items-center gap-2">Add nodes to the swarm</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-tutorial/deploy-service/index.html" title="Deploy a service"><span class="flex items-center gap-2">Deploy a service</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-tutorial/inspect-service/index.html" title="Inspect the service"><span class="flex items-center gap-2">Inspect the service</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-tutorial/scale-service/index.html" title="Scale the service"><span class="flex items-center gap-2">Scale the service</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-tutorial/delete-service/index.html" title="Delete the service"><span class="flex items-center gap-2">Delete the service</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-tutorial/rolling-update/index.html" title="Apply rolling updates"><span class="flex items-center gap-2">Apply rolling updates</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-tutorial/drain-node/index.html" title="Drain a node"><span class="flex items-center gap-2">Drain a node</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/ingress/index.html" title="Use Swarm mode routing mesh"><span class="flex items-center gap-2">Use Swarm mode routing mesh</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">How Swarm mode works
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/how-swarm-mode-works/nodes/index.html" title="How nodes work"><span class="flex items-center gap-2">How nodes work</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/how-swarm-mode-works/services/index.html" title="How services work"><span class="flex items-center gap-2">How services work</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/how-swarm-mode-works/pki/index.html" title="Manage swarm security with PKI"><span class="flex items-center gap-2">Manage swarm security with PKI</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/how-swarm-mode-works/swarm-task-states/index.html" title="Swarm task states"><span class="flex items-center gap-2">Swarm task states</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm-mode/index.html" title="Run Docker in Swarm mode"><span class="flex items-center gap-2">Run Docker in Swarm mode</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/join-nodes/index.html" title="Join nodes to a swarm"><span class="flex items-center gap-2">Join nodes to a swarm</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/manage-nodes/index.html" title="Manage nodes in a swarm"><span class="flex items-center gap-2">Manage nodes in a swarm</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/services/index.html" title="Deploy services to a swarm"><span class="flex items-center gap-2">Deploy services to a swarm</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/stack-deploy/index.html" title="Deploy a stack to a swarm"><span class="flex items-center gap-2">Deploy a stack to a swarm</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/configs/index.html" title="Store service configuration data"><span class="flex items-center gap-2">Store service configuration data</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/secrets/index.html" title="Manage sensitive data with Docker secrets"><span class="flex items-center gap-2">Manage sensitive data with Docker secrets</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/swarm_manager_locking/index.html" title="Lock your swarm"><span class="flex items-center gap-2">Lock your swarm</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/networking/index.html" title="Manage swarm service networks"><span class="flex items-center gap-2">Manage swarm service networks</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/admin_guide/index.html" title="Swarm administration guide"><span class="flex items-center gap-2">Swarm administration guide</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/swarm/raft/index.html" title="Raft consensus in Swarm mode"><span class="flex items-center gap-2">Raft consensus in Swarm mode</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/deprecated/index.html" title="Deprecated features"><span class="flex items-center gap-2">Deprecated features</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Release notes
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes.html" title="Engine 25.0"><span class="flex items-center gap-2">Engine 25.0</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Previous versions
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/24.0/index.html" title="Engine 24.0"><span class="flex items-center gap-2">Engine 24.0</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/23.0/index.html" title="Engine 23.0"><span class="flex items-center gap-2">Engine 23.0</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/20.10/index.html" title="Engine 20.10"><span class="flex items-center gap-2">Engine 20.10</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/19.03/index.html" title="Engine 19.03"><span class="flex items-center gap-2">Engine 19.03</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/18.09/index.html" title="Engine 18.09"><span class="flex items-center gap-2">Engine 18.09</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/18.06/index.html" title="Engine 18.06"><span class="flex items-center gap-2">Engine 18.06</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/18.05/index.html" title="Engine 18.05"><span class="flex items-center gap-2">Engine 18.05</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/18.04/index.html" title="Engine 18.04"><span class="flex items-center gap-2">Engine 18.04</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/18.03/index.html" title="Engine 18.03"><span class="flex items-center gap-2">Engine 18.03</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/18.02/index.html" title="Engine 18.02"><span class="flex items-center gap-2">Engine 18.02</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/18.01/index.html" title="Engine 18.01"><span class="flex items-center gap-2">Engine 18.01</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/17.12/index.html" title="Engine 17.12"><span class="flex items-center gap-2">Engine 17.12</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/17.11/index.html" title="Engine 17.11"><span class="flex items-center gap-2">Engine 17.11</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/17.10/index.html" title="Engine 17.10"><span class="flex items-center gap-2">Engine 17.10</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/17.09/index.html" title="Engine 17.09"><span class="flex items-center gap-2">Engine 17.09</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/17.07/index.html" title="Engine 17.07"><span class="flex items-center gap-2">Engine 17.07</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/17.06/index.html" title="Engine 17.06"><span class="flex items-center gap-2">Engine 17.06</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/17.05/index.html" title="Engine 17.05"><span class="flex items-center gap-2">Engine 17.05</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/17.04/index.html" title="Engine 17.04"><span class="flex items-center gap-2">Engine 17.04</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/17.03/index.html" title="Engine 17.03"><span class="flex items-center gap-2">Engine 17.03</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../engine/release-notes/prior-releases/index.html" title="Engine 1.13 and earlier"><span class="flex items-center gap-2">Engine 1.13 and earlier</span></a></li></ul></li></ul></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Docker Build
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../buildx/working-with-buildx/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../go/buildx/index.html" title=Architecture><span class="flex items-center gap-2">Architecture</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Building images
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/building/packaging.html" title="Packaging your software"><span class="flex items-center gap-2">Packaging your software</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/building/context/index.html" title=Context><span class="flex items-center gap-2">Context</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/building/multi-stage.html" title="Multi-stage builds"><span class="flex items-center gap-2">Multi-stage builds</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/building/variables/index.html" title=Variables><span class="flex items-center gap-2">Variables</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/building/multi-platform/index.html" title="Multi-platform images"><span class="flex items-center gap-2">Multi-platform images</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/building/secrets/index.html" title="Build secrets"><span class="flex items-center gap-2">Build secrets</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/building/annotations/index.html" title=Annotations><span class="flex items-center gap-2">Annotations</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/building/opentelemetry/index.html" title="OpenTelemetry support"><span class="flex items-center gap-2">OpenTelemetry support</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/building/base-images/index.html" title="Create your own base image"><span class="flex items-center gap-2">Create your own base image</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Builders
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/builders/index.html" title="Builders overview"><span class="flex items-center gap-2">Builders overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/builders/manage/index.html" title="Manage builders"><span class="flex items-center gap-2">Manage builders</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Drivers
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/drivers/index.html" title="Drivers overview"><span class="flex items-center gap-2">Drivers overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/drivers/docker/index.html" title="Docker driver"><span class="flex items-center gap-2">Docker driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/drivers/docker-container/index.html" title="Docker container driver"><span class="flex items-center gap-2">Docker container driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/drivers/kubernetes/index.html" title="Kubernetes driver"><span class="flex items-center gap-2">Kubernetes driver</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/drivers/remote/index.html" title="Remote driver"><span class="flex items-center gap-2">Remote driver</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Build Cloud
<span class="not-prose px-1 rounded-sm bg-violet-light dark:bg-violet-dark text-white text-xs">New</span>
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cloud/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cloud/setup/index.html" title=Setup><span class="flex items-center gap-2">Setup</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cloud/usage/index.html" title=Usage><span class="flex items-center gap-2">Usage</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cloud/ci/index.html" title="Build Cloud in CI"><span class="flex items-center gap-2">Build Cloud in CI</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cloud/optimization/index.html" title="Optimize for cloud builds"><span class="flex items-center gap-2">Optimize for cloud builds</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Exporters
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/exporters.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/exporters/image-registry/index.html" title="Image and registry exporters"><span class="flex items-center gap-2">Image and registry exporters</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/exporters/local-tar/index.html" title="Local and tar exporters"><span class="flex items-center gap-2">Local and tar exporters</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/exporters/oci-docker/index.html" title="OCI and Docker exporters"><span class="flex items-center gap-2">OCI and Docker exporters</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Cache
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cache.html" title="Optimizing builds with cache"><span class="flex items-center gap-2">Optimizing builds with cache</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cache/garbage-collection/index.html" title="Garbage collection"><span class="flex items-center gap-2">Garbage collection</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Cache backends
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cache/backends/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cache/backends/inline/index.html" title=Inline><span class="flex items-center gap-2">Inline</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cache/backends/local/index.html" title=Local><span class="flex items-center gap-2">Local</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cache/backends/registry/index.html" title=Registry><span class="flex items-center gap-2">Registry</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cache/backends/gha/index.html" title="GitHub Actions"><span class="flex items-center gap-2">GitHub Actions</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cache/backends/azblob/index.html" title="Azure Blob Storage"><span class="flex items-center gap-2">Azure Blob Storage</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/cache/backends/s3/index.html" title="Amazon S3"><span class="flex items-center gap-2">Amazon S3</span></a></li></ul></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Bake
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/bake.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/bake/reference/index.html" title="Bake file reference"><span class="flex items-center gap-2">Bake file reference</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/bake/configuring-build/index.html" title="Configuring builds"><span class="flex items-center gap-2">Configuring builds</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/bake/hcl-funcs/index.html" title="Advanced patterns"><span class="flex items-center gap-2">Advanced patterns</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/bake/build-contexts/index.html" title="Build contexts and linking targets"><span class="flex items-center gap-2">Build contexts and linking targets</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/bake/compose-file/index.html" title="Building from Compose file"><span class="flex items-center gap-2">Building from Compose file</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/bake/remote-definition/index.html" title="Remote Bake file definition"><span class="flex items-center gap-2">Remote Bake file definition</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Attestations
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/attestations/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/attestations/sbom/index.html" title=SBOM><span class="flex items-center gap-2">SBOM</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/attestations/slsa-provenance/index.html" title=Provenance><span class="flex items-center gap-2">Provenance</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/attestations/slsa-definitions/index.html" title="SLSA definitions"><span class="flex items-center gap-2">SLSA definitions</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/attestations/attestation-storage/index.html" title="Attestation storage"><span class="flex items-center gap-2">Attestation storage</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Dockerfile
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/buildkit/dockerfile-frontend/index.html" title="Custom Dockerfile syntax"><span class="flex items-center gap-2">Custom Dockerfile syntax</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/dockerfile/release-notes/index.html" title="Release notes"><span class="flex items-center gap-2">Release notes</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">BuildKit
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/buildkit/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/buildkit/configure/index.html" title=Configure><span class="flex items-center gap-2">Configure</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/buildkit/toml-configuration/index.html" title="TOML configuration"><span class="flex items-center gap-2">TOML configuration</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Continuous integration
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/index.html" title="CI with Docker"><span class="flex items-center gap-2">CI with Docker</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">GitHub Actions
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/index.html" title=Introduction><span class="flex items-center gap-2">Introduction</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/configure-builder/index.html" title="Configuring your builder"><span class="flex items-center gap-2">Configuring your builder</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/multi-platform/index.html" title="Multi-platform image"><span class="flex items-center gap-2">Multi-platform image</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/secrets/index.html" title=Secrets><span class="flex items-center gap-2">Secrets</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/push-multi-registries/index.html" title="Push to multiple registries"><span class="flex items-center gap-2">Push to multiple registries</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/manage-tags-labels/index.html" title="Manage tags and labels"><span class="flex items-center gap-2">Manage tags and labels</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/cache/index.html" title="Cache management"><span class="flex items-center gap-2">Cache management</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/export-docker/index.html" title="Export to Docker"><span class="flex items-center gap-2">Export to Docker</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/test-before-push/index.html" title="Test before push"><span class="flex items-center gap-2">Test before push</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/local-registry/index.html" title="Local registry"><span class="flex items-center gap-2">Local registry</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/share-image-jobs/index.html" title="Share built image between jobs"><span class="flex items-center gap-2">Share built image between jobs</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/named-contexts/index.html" title="Named contexts"><span class="flex items-center gap-2">Named contexts</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/copy-image-registries/index.html" title="Copy image between registries"><span class="flex items-center gap-2">Copy image between registries</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/update-dockerhub-desc/index.html" title="Update Docker Hub repo description"><span class="flex items-center gap-2">Update Docker Hub repo description</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/attestations/index.html" title="SBOM and provenance attestations"><span class="flex items-center gap-2">SBOM and provenance attestations</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/ci/github-actions/annotations/index.html" title=Annotations><span class="flex items-center gap-2">Annotations</span></a></li></ul></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../build/release-notes/index.html" title="Release notes"><span class="flex items-center gap-2">Release notes</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Docker Compose
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Introduction to Compose
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="intro/features-uses/index.html" title="Why use Compose?"><span class="flex items-center gap-2">Why use Compose?</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="history/index.html" title="History and development of Compose"><span class="flex items-center gap-2">History and development of Compose</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Install
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="install.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="install/linux/index.html" title="Install Compose plugin"><span class="flex items-center gap-2">Install Compose plugin</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="install/standalone/index.html" title="Install Compose standalone"><span class="flex items-center gap-2">Install Compose standalone</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="install/uninstall/index.html" title="Uninstall Compose"><span class="flex items-center gap-2">Uninstall Compose</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="compose-application-model/index.html" title="How Compose works"><span class="flex items-center gap-2">How Compose works</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="gettingstarted.html" title="Try Compose"><span class="flex items-center gap-2">Try Compose</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="project-name/index.html" title="Specify a project name"><span class="flex items-center gap-2">Specify a project name</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Environment variables
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="environment-variables/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="environment-variables/set-environment-variables/index.html" title="Explore ways to set environment variables"><span class="flex items-center gap-2">Explore ways to set environment variables</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="environment-variables/envvars-precedence.html" title="Understand environment variables precedence"><span class="flex items-center gap-2">Understand environment variables precedence</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="env-file/index.html" title="Syntax for environment files"><span class="flex items-center gap-2">Syntax for environment files</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="environment-variables/envvars/index.html" title="Set or change pre-defined environment variables"><span class="flex items-center gap-2">Set or change pre-defined environment variables</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="environment-variables/best-practices/index.html" title="Best practices"><span class="flex items-center gap-2">Best practices</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Use...
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="profiles/index.html" title="...service profiles"><span class="flex items-center gap-2">...service profiles</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="file-watch/index.html" title="...Compose Watch"><span class="flex items-center gap-2">...Compose Watch</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="production/index.html" title="...Compose in production"><span class="flex items-center gap-2">...Compose in production</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="use-secrets/index.html" title="...secrets in Compose"><span class="flex items-center gap-2">...secrets in Compose</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Working with multiple Compose files
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="multiple-compose-files/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="multiple-compose-files/merge/index.html" title=Merge><span class="flex items-center gap-2">Merge</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="multiple-compose-files/extends/index.html" title=Extend><span class="flex items-center gap-2">Extend</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="multiple-compose-files/include/index.html" title=Include><span class="flex items-center gap-2">Include</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="startup-order/index.html" title="Control startup order"><span class="flex items-center gap-2">Control startup order</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="gpu-support/index.html" title="GPU support"><span class="flex items-center gap-2">GPU support</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="networking/index.html" title=Networking><span class="flex items-center gap-2">Networking</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="samples-for-compose/index.html" title="Sample apps"><span class="flex items-center gap-2">Sample apps</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="feedback/index.html" title="Give feedback"><span class="flex items-center gap-2">Give feedback</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="migrate.html" title="Migrate to Compose V2"><span class="flex items-center gap-2">Migrate to Compose V2</span></a></li><li class="pl-4 sidebar-hover rounded
bg-gray-light-200 dark:bg-gray-dark-200"><a aria-current=page class="py-2 w-full truncate block" href="release-notes.html" title="Release notes"><span class="flex items-center gap-2">Release notes</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Docker Hub
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-id.html" title="Create an account"><span class="flex items-center gap-2">Create an account</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/quickstart.html" title=Quickstart><span class="flex items-center gap-2">Quickstart</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Repositories
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/repos/create/index.html" title=Create><span class="flex items-center gap-2">Create</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/repos/access.html" title=Access><span class="flex items-center gap-2">Access</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/repos.html" title=Manage><span class="flex items-center gap-2">Manage</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/download-rate-limit/index.html" title="Download rate limit"><span class="flex items-center gap-2">Download rate limit</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/webhooks/index.html" title=Webhooks><span class="flex items-center gap-2">Webhooks</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/service-accounts/index.html" title="Service accounts"><span class="flex items-center gap-2">Service accounts</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Automated builds
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/builds/how-builds-work.html" title="How Automated builds work"><span class="flex items-center gap-2">How Automated builds work</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/builds/index.html" title="Set up Automated builds"><span class="flex items-center gap-2">Set up Automated builds</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/builds/manage-builds/index.html" title="Manage your builds"><span class="flex items-center gap-2">Manage your builds</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/builds/troubleshoot/index.html" title="Troubleshoot your builds"><span class="flex items-center gap-2">Troubleshoot your builds</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/builds/automated-testing/index.html" title="Testing in Automated builds"><span class="flex items-center gap-2">Testing in Automated builds</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/builds/advanced/index.html" title="Advanced options for builds"><span class="flex items-center gap-2">Advanced options for builds</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/builds/link-source/index.html" title="Link to GitHub and BitBucket"><span class="flex items-center gap-2">Link to GitHub and BitBucket</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/vulnerability-scanning/index.html" title="Vulnerability scanning"><span class="flex items-center gap-2">Vulnerability scanning</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../registry/recipes/mirror/index.html" title=Mirroring><span class="flex items-center gap-2">Mirroring</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../registry/spec/auth/index.html" title=Registry><span class="flex items-center gap-2">Registry</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/oci-artifacts/index.html" title="OCI artifacts"><span class="flex items-center gap-2">OCI artifacts</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/release-notes.html" title="Release notes"><span class="flex items-center gap-2">Release notes</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Administration
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Organization administration
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/organization/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/organization/orgs.html" title="Create your organization"><span class="flex items-center gap-2">Create your organization</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/organization/onboard.html" title="Onboard your organization"><span class="flex items-center gap-2">Onboard your organization</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/organization/members/index.html" title="Manage members"><span class="flex items-center gap-2">Manage members</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/organization/manage-a-team/index.html" title="Create and manage a team"><span class="flex items-center gap-2">Create and manage a team</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/organization/activity-logs/index.html" title="Activity logs"><span class="flex items-center gap-2">Activity logs</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/organization/general-settings/index.html" title="Organization settings"><span class="flex items-center gap-2">Organization settings</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Company administration
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/company/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/company/new-company/index.html" title="Create a company"><span class="flex items-center gap-2">Create a company</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/company/organizations/index.html" title="Manage organizations"><span class="flex items-center gap-2">Manage organizations</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/company/users/index.html" title="Manage users"><span class="flex items-center gap-2">Manage users</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/company/owners/index.html" title="Manage company owners"><span class="flex items-center gap-2">Manage company owners</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/convert-account/index.html" title="Convert an account into an organization"><span class="flex items-center gap-2">Convert an account into an organization</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/deactivate-account/index.html" title="Deactivate an account or organization"><span class="flex items-center gap-2">Deactivate an account or organization</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Security
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">For admins
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Single Sign-on
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-admins/single-sign-on/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-admins/single-sign-on/configure/index.html" title=Configure><span class="flex items-center gap-2">Configure</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-admins/single-sign-on/manage/index.html" title=Manage><span class="flex items-center gap-2">Manage</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-admins/scim/index.html" title=SCIM><span class="flex items-center gap-2">SCIM</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-admins/group-mapping/index.html" title="Group mapping"><span class="flex items-center gap-2">Group mapping</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/configure-sign-in/index.html" title="Enforce sign in"><span class="flex items-center gap-2">Enforce sign in</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-admins/roles-and-permissions/index.html" title="Roles and permissions"><span class="flex items-center gap-2">Roles and permissions</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/domain-audit/index.html" title="Domain audit"><span class="flex items-center gap-2">Domain audit</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/organization/image-access/index.html" title="Image Access Management"><span class="flex items-center gap-2">Image Access Management</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../admin/organization/registry-access/index.html" title="Registry Access Management"><span class="flex items-center gap-2">Registry Access Management</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">For developers
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/access-tokens/index.html" title="Create and manage access tokens"><span class="flex items-center gap-2">Create and manage access tokens</span></a></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Two-factor authentication
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-developers/2fa/index.html" title="Enable two-factor authentication"><span class="flex items-center gap-2">Enable two-factor authentication</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-developers/2fa/disable-2fa/index.html" title="Disable two-factor authentication"><span class="flex items-center gap-2">Disable two-factor authentication</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-developers/2fa/recover-hub-account/index.html" title="Recover your Docker Hub account"><span class="flex items-center gap-2">Recover your Docker Hub account</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/for-developers/2fa/new-recovery-code/index.html" title="Generate a new recovery code"><span class="flex items-center gap-2">Generate a new recovery code</span></a></li></ul></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../security/security-announcements/index.html" title="Security announcements"><span class="flex items-center gap-2">Security announcements</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Billing
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../billing/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../billing/payment-method/index.html" title="Add or update a payment method"><span class="flex items-center gap-2">Add or update a payment method</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../billing/details/index.html" title="Update the billing information"><span class="flex items-center gap-2">Update the billing information</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../billing/history/index.html" title="View your billing history"><span class="flex items-center gap-2">View your billing history</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../billing/cycle/index.html" title="Change your billing cycle"><span class="flex items-center gap-2">Change your billing cycle</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../billing/scout-billing/index.html" title="Docker Scout billing"><span class="flex items-center gap-2">Docker Scout billing</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../billing/build-billing/index.html" title="Docker Build Cloud billing"><span class="flex items-center gap-2">Docker Build Cloud billing</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Subscription
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../subscription/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../subscription/details/index.html" title="Docker subscriptions and features"><span class="flex items-center gap-2">Docker subscriptions and features</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../subscription/upgrade/index.html" title=Upgrade><span class="flex items-center gap-2">Upgrade</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../subscription/add-seats/index.html" title="Add seats"><span class="flex items-center gap-2">Add seats</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../subscription/remove-seats/index.html" title="Remove seats"><span class="flex items-center gap-2">Remove seats</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../subscription/downgrade/index.html" title=Downgrade><span class="flex items-center gap-2">Downgrade</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../subscription/desktop-license/index.html" title="Docker Desktop license agreement"><span class="flex items-center gap-2">Docker Desktop license agreement</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../subscription/scout-details/index.html" title="Docker Scout subscriptions and features"><span class="flex items-center gap-2">Docker Scout subscriptions and features</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../subscription/build-details/index.html" title="Docker Build Cloud subscriptions and features"><span class="flex items-center gap-2">Docker Build Cloud subscriptions and features</span></a></li></ul></li><li><button class="rounded px-4 sidebar-hover w-full flex items-center justify-between">
<span class="py-2 truncate flex items-center gap-2">Trusted content
</span><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-357q-6 0-11-2t-10-7L261-564q-9-9-9-21t9-21 21.5-9 21.5 9l176 176 176-176q9-9 21-9t21 9 9 21.5-9 21.5L501-366q-5 5-10 7t-11 2z"/></svg>
</span><span class="icon-svg hidden"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M480-543 304-367q-9 9-21.5 9.5T261-366t-9-21.5 9-21.5l198-198q5-5 10-7t11-2 11 2 10 7l197 197q9 9 9.5 21t-8.5 21-21.5 9-21.5-9L480-543z"/></svg></span></button><ul class="hidden ml-3 md:ml-[21px]"><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../trusted-content/index.html" title=Overview><span class="flex items-center gap-2">Overview</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../trusted-content/official-images/index.html" title="Docker Official images"><span class="flex items-center gap-2">Docker Official images</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../trusted-content/dvp-program/index.html" title="Docker Verified Publisher Program"><span class="flex items-center gap-2">Docker Verified Publisher Program</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../trusted-content/dsos-program/index.html" title="Docker-Sponsored Open Source Program"><span class="flex items-center gap-2">Docker-Sponsored Open Source Program</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../docker-hub/publish/insights-analytics.html" title="Insights and analytics"><span class="flex items-center gap-2">Insights and analytics</span></a></li></ul></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../release-notes/index.html" title="Release notes"><span class="flex items-center gap-2">Release notes</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../desktop/support/index.html" title="Get support"><span class="flex items-center gap-2">Get support</span></a></li><li class="pl-4 sidebar-hover rounded"><a class="py-2 w-full truncate block" href="../release-lifecycle.html" title="Product release lifecycle"><span class="flex items-center gap-2">Product release lifecycle</span></a></li></ul></nav></div><div class="w-[840px] flex-initial overflow-clip p-6 pt-0 md:w-lvw"><nav id=breadcrumbs class="py-4 gap-4 flex items-center text-gray-light dark:text-gray-dark max-w-full min-w-0"><a href="../manuals/index.html" class="link truncate">Manuals</a><span>/</span><a href="index.html" class="link truncate">Docker Compose</a><span>/</span>
<span class=truncate>Release notes</span></nav><article class="DocSearch-content prose max-w-none dark:prose-invert"><h1 class=scroll-mt-36>Docker Compose release notes</h1><blockquote class=important><p><strong>Important</strong></p><p>Docker's documentation refers to and describes Compose V2 functionality.</p><p>Effective July 2023, Compose V1 stopped receiving updates and is no longer in new Docker Desktop releases. Compose V2 has replaced it and is now integrated into all current Docker Desktop versions. For more information, see
<a class=link href="migrate.html">Migrate to Compose V2</a>.</p></blockquote><p>For more detailed information, see the
<a class=link href=https://github.com/docker/compose/releases/ target=_blank rel=noopener>release notes in the Compose repo<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=2246><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2246">2.24.6</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2024-02-15</em><h3 class=scroll-mt-20 id=update><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update">Update</a></h3><ul><li>Dependencies upgrade: bump cli to 25.0.3</li><li>Dependencies upgrade: bump compose-go to 2.0.0-rc.7</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements">Bug fixes and enhancements</a></h3><ul><li>Fixed issue of <code>.env</code> file loading when project file is set via <code>COMPOSE_FILE</code> variable</li><li>Aligned <code>ps --status=exited</code> behaviour with the Docker CLI behaviour</li><li>Fixed a deadlock when collecting large logs</li></ul><h2 class=scroll-mt-20 id=2245><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2245">2.24.5</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2024-01-30</em><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-1">Bug fixes and enhancements</a></h3><ul><li>Fixed "failed to solve: changes out of order" errors when building images on Windows.</li></ul><h2 class=scroll-mt-20 id=2244><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2244">2.24.4</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2024-01-29</em><h3 class=scroll-mt-20 id=update-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-1">Update</a></h3><ul><li>Dependencies upgrade: bump cli to 25.0.1</li><li>Dependencies upgrade: bump docker to 25.0.1</li><li>Dependencies upgrade: bump compose-go to 2.0.0-rc.3</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-2">Bug fixes and enhancements</a></h3><ul><li>Fixed issue when checking external network existence when swarm is enabled.</li><li>Added support for <code>storage_opt</code> attribute.</li></ul><h2 class=scroll-mt-20 id=2243><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2243">2.24.3</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2024-01-24</em><p>This release fixes a build issue with Docker Desktop for Windows introduced in Compose v2.24.0.</p><h3 class=scroll-mt-20 id=update-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-2">Update</a></h3><ul><li>Compose now uses a custom version of <code>fsutils</code> library.</li></ul><h2 class=scroll-mt-20 id=2242><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2242">2.24.2</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2024-01-22</em><h3 class=scroll-mt-20 id=update-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-3">Update</a></h3><ul><li>Dependencies upgrade: bump cli to 25.0.0 GA</li><li>Dependencies upgrade: bump compose-go to 2.0.0-rc.2</li></ul><h2 class=scroll-mt-20 id=2241><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2241">2.24.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2024-01-18</em><h3 class=scroll-mt-20 id=update-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-4">Update</a></h3><ul><li>Dependencies upgrade: bump cli to 25.0.0-rc3</li><li>Dependencies upgrade: bump docker to 25.0.0-rc3</li><li>Dependencies upgrade: bump compose-go to 2.0.0-rc.1</li><li>Dependencies upgrade: bump containerd to 1.7.12</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-3">Bug fixes and enhancements</a></h3><ul><li>Reworked the display of container status during <code>up</code></li><li>Fixed the engine version required to use <code>healthcheck.start_interval</code></li><li>Removed <code>watch</code> subcommand from the <code>alpha</code> command</li><li>Fixed a bug when handling received signals</li></ul><h2 class=scroll-mt-20 id=2240><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2240">2.24.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2024-01-11</em><h3 class=scroll-mt-20 id=update-5><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-5">Update</a></h3><ul><li>Dependencies upgrade: bump cli to 25.0.0-beta.3</li><li>Dependencies upgrade: bump compose-go to 2.0.0-beta.3</li><li>Dependencies upgrade: bump golang to 1.21.6</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-4">Bug fixes and enhancements</a></h3><ul><li>Introduced <code>docker compose attach</code> to attach local standard input, output, and error streams to a service's running container.</li><li>Introduced <code>docker compose stats</code> to display a live stream of container(s) resource usage statistics.</li><li>Introduced <code>docker compose ps --orphans</code> to include/exclude services not declared.</li><li>Introduced <code>docker compose logs --index</code> to select a replica container.</li><li>Introduced <code>docker compose build --with-dependencies</code> to also build dependencies.</li><li>Added source policies for build.</li><li>Included disabled services for shell completion.</li><li>Restored <code>Project</code> in ps JSON output.</li><li>Added OCI 1.0 fallback support for AWS ECR.</li><li>Build now does not require environment to be resolved.</li><li>Compose now sends out a cancel event on SIGINT/SIGTERM signal for <code>compose up</code>.</li><li>Fixed log by exposing services ports when <code>--verbose</code>.</li><li>Fixed inlined and environment-defined configs to be mounted under /&lt;id> until an explicit target is set.</li><li>Fixed combination of <code>--pull always --no-build</code>.</li><li>Fixed race condition in log printer.</li><li>Fixed <code>docker compose up</code> teardown when command context is cancelled.</li></ul><h2 class=scroll-mt-20 id=2233><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2233">2.23.3</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-11-22</em><h3 class=scroll-mt-20 id=update-6><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-6">Update</a></h3><ul><li>Dependencies upgrade: bump buildx to v0.12.0</li></ul><h2 class=scroll-mt-20 id=2232><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2232">2.23.2</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-11-21</em><h3 class=scroll-mt-20 id=update-7><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-7">Update</a></h3><ul><li>Dependencies upgrade: bump buildkit 0.12.3</li><li>Dependencies upgrade: bump docker 24.0.7</li><li>Dependencies upgrade: bump cli 24.0.7</li><li>Dependencies upgrade: bump 1.20.2</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-5><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-5">Bug fixes and enhancements</a></h3><ul><li>Compose now supports <code>builds.tags</code> with <code>push</code> command.</li><li>Compose Watch now re-builds service images at startup.</li><li>Now <code>--remove-orphans</code> doesn't manage disabled services as orphaned.</li><li>Compose displays <code>Building</code> output log only if there is at least one service to build.</li></ul><h2 class=scroll-mt-20 id=2231><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2231">2.23.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-11-16</em><h3 class=scroll-mt-20 id=update-8><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-8">Update</a></h3><ul><li>Dependencies upgrade: bump compose-go to v1.20.1</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-6><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-6">Bug fixes and enhancements</a></h3><ul><li>Aligned Compose with OCI artifact best practices.</li><li>Introduced <code>--resolve-image-digests</code> so users can seal service images by digest when publishing a Compose application.</li><li>Improved Compose Watch configuration logging.</li><li>Compose now rejects a Compose file using <code>secrets|configs.driver</code> or <code>template_driver</code>.</li><li>Compose now fails to start if a dependency is missing.</li><li>Fixed SIGTERM support to stop/kill stack.</li><li>Fixed a <code>--hash</code> regression.</li><li>Fixed "Application failed to start after update" when an external network is on a watched service.</li><li>Fixed <code>--pull</code> documentation.</li><li>Fixed display by adding newline in cmd/compose/build.go.</li><li>Compose is rendered quiet after filtering applied.</li><li>Stripped project prefix from docker-compose up output.</li></ul><h2 class=scroll-mt-20 id=2230><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2230">2.23.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-10-18</em><h3 class=scroll-mt-20 id=update-9><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-9">Update</a></h3><ul><li>Dependencies upgrade: bump compose-go to v1.20.0</li><li>Dependencies upgrade: bump containerd to 1.7.7</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-7><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-7">Bug fixes and enhancements</a></h3><ul><li>Added dry-run support for publish command</li><li>Added <code>COMPOSE_ENV_FILES</code> env variable to pass a list of env files</li><li>Added <code>sync+restart</code> action to <code>compose watch</code></li><li>Aligned <code>compose ps</code> output with Docker CLI by default and introduced <code>--no-trunc</code> to keep the previous behaviour</li><li>Fixed hashes inconsistency between <code>up</code> and <code>configure</code></li><li>Enabled profiles when <code>down</code> ran with explicit service names</li><li>Fixed an issue when the pull policy provided was invalid</li></ul><h2 class=scroll-mt-20 id=2220><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2220">2.22.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-09-21</em><blockquote><p><strong>Note</strong></p><p>The <code>watch</code> command is now generally available (GA). You can directly use it from the root command <code>docker compose watch</code>.
For more information, see
<a class=link href="file-watch/index.html">File watch</a>.</p></blockquote><h3 class=scroll-mt-20 id=update-10><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-10">Update</a></h3><ul><li>Dependencies upgrade: bump golang to 1.21.1</li><li>Dependencies upgrade: bump compose-go to v1.19.0</li><li>Dependencies upgrade: bump buildkit to v0.12.2</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-8><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-8">Bug fixes and enhancements</a></h3><ul><li>Added experimental support for the <code>publish</code> command.</li><li>The command <code>watch</code> now builds and launches the project during startup.</li><li>Added <code>policy</code> option to the <code>--pull</code> flag.</li><li>Fixed various race and deadlock conditions for <code>up</code> command on exit.</li><li>Fixed multi-platform issues on build.</li><li>Enabled services that are explicitly requested even when their <code>profiles</code> aren't activated.</li><li>Fixed a <code>config</code> issue when the declared <code>env_file</code> is missing.</li><li>Passed BuildOptions to <code>up</code> and <code>run</code> commands.</li></ul><h2 class=scroll-mt-20 id=2210><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2210">2.21.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-08-30</em><blockquote><p><strong>Note</strong></p><p>The format of <code>docker compose ps</code> and <code>docker compose ps --format=json</code> changed to better align with <code>docker ps</code> output. See
<a class=link href=https://github.com/docker/compose/pull/10918 target=_blank rel=noopener>compose#10918<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p></blockquote><h3 class=scroll-mt-20 id=update-11><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-11">Update</a></h3><ul><li>Dependencies upgrade: bump compose-go to v1.18.3</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-9><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-9">Bug fixes and enhancements</a></h3><ul><li>Changed <code>docker compose ps</code> and <code>docker compose ps --format=json</code> output to align with Docker CLI.</li><li>Added support for multi-document YAML files.</li><li>Added support for loading remote Compose files from Git repos with <code>include</code> (experimental).</li><li>Fixed incorrect proxy variables during build.</li><li>Fixed truncated container logs on container exit.</li><li>Fixed "no such service" errors when using <code>include</code> with <code>--profile</code>.</li><li>Fixed <code>.env</code> overrides when using <code>include</code>.</li></ul><h2 class=scroll-mt-20 id=2203><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2203">2.20.3</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-08-11</em><h3 class=scroll-mt-20 id=update-12><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-12">Update</a></h3><ul><li>Dependencies upgrade: bump golang to 1.21.0</li><li>Dependencies upgrade: bump compose-go to v1.18.1</li><li>Dependencies upgrade: bump buildkit to v0.12.1</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-10><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-10">Bug fixes and enhancements</a></h3><ul><li>Improved speed and reliability of <code>watch</code> sync.</li><li>Added builder's name on the first build line.</li><li>Improved shell completion for <code>--project-directory</code> and <code>--profile</code>.</li><li>Fixed build issue with proxy configuration not passing to legacy builder.</li><li>Removed unnecessary warning when an option dependency exists successfully.</li></ul><h2 class=scroll-mt-20 id=2202><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2202">2.20.2</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-07-19</em><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-11><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-11">Bug fixes and enhancements</a></h3><ul><li>Added support for the <code>depends_on.required</code> attribute.</li><li>Fixed an issue where build tries to push unnamed service images.</li><li>Fixed a bug which meant the target secret path on Windows was not checked.</li><li>Fixed a bug resolving build context path for services using <code>extends.file</code>.</li></ul><h2 class=scroll-mt-20 id=2201><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2201">2.20.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-07-18</em><h3 class=scroll-mt-20 id=update-13><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-13">Update</a></h3><ul><li>Dependencies upgrade: bump golang to 1.20.6</li><li>Dependencies upgrade: bump buildx to v0.11.2</li><li>Dependencies upgrade: bump buildkit to v0.12</li><li>Dependencies upgrade: bump docker-cli to v24.0.5-dev</li></ul><h2 class=scroll-mt-20 id=2200><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2200">2.20.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-07-11</em><h3 class=scroll-mt-20 id=update-14><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-14">Update</a></h3><ul><li>Dependencies upgrade: bump docker/cli-docs-tools to v0.6.0</li><li>Dependencies upgrade: bump docker to v24.0.4</li><li>Dependencies upgrade: bump buildx to v0.11.1</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-12><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-12">Bug fixes and enhancements</a></h3><ul><li>Introduced the <code>wait</code> command.</li><li>Added support of <code>--builder</code> and <code>BUILDX_BUILDER</code> to the <code>build</code> command.</li><li>Added support for the <code>include</code> and <code>attach</code> attributes from the Compose Specification.</li><li>Fixed a DryRun mode issue when initializing CLI client.</li><li>Fixed a bug with random missing network when a service has more than one.</li><li>Fixed the Secrets file permission value to comply with the Compose Specification.</li><li>Fixed an issue about <code>no-deps</code> flag not being applied.</li><li>Fixed some source code comments.</li><li>Fixed a bug when <code>--index</code> is not set select.</li><li>Fixed a process leak in the wait e2e test.</li><li>Improved some test speeds.</li></ul><h2 class=scroll-mt-20 id=2191><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2191">2.19.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-06-29</em><h3 class=scroll-mt-20 id=update-15><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-15">Update</a></h3><ul><li>Dependencies upgrade: bump compose-go to v1.15.1</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-13><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-13">Bug fixes and enhancements</a></h3><ul><li>Fixed sporadic "container not connected to network" errors on <code>compose up</code>.</li><li>Fixed "please specify build context" errors on <code>compose build</code>.</li><li>Compose now warns if using a bind mount in a service <code>watch</code> configuration.</li></ul><h2 class=scroll-mt-20 id=2190><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2190">2.19.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-06-21</em><h3 class=scroll-mt-20 id=update-16><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-16">Update</a></h3><ul><li>Dependencies upgrade: bump compose-go to v1.15.0</li><li>Dependencies upgrade: bump buildx to v0.11.0</li><li>Dependencies upgrade: bump docker to v24.0.2</li><li>Dependencies upgrade: bump golang to 1.20.5</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-14><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-14">Bug fixes and enhancements</a></h3><ul><li>Introduced the ability to select a single service to be stopped by <code>compose down</code>.</li><li>Added <code>--progress</code> as top-level flag to configure progress UI style.</li><li>Introduced <code>run --cap-add</code> to run maintenance commands using service image.</li><li>Fixed a bug during detection of swarm mode.</li><li>Fixed a bug when setting the project name via <code>COMPOSE_PROJECT_NAME</code> environment variable.</li><li>Adjusted the display of the volumes flag with the help of <code>down</code> command.</li><li>Fixed a bug in the <code>up</code> command which should not silently ignore missing <code>depends_on</code> services.</li><li>Aligned forward signal to container behaviour with the <code>docker run</code> one.</li><li>Compose now detects network name conflict.</li><li>Fixed a typo in the warning message about an existing volume.</li><li>Compose now detects new services started after <code>compose -p x logs -f</code> command.</li><li>Fixed a bug when <code>compose</code> was used as project name.</li><li>Fixed a bug in the <code>watch</code> command when a directory does not exist.</li><li>Removed default timeout of 10 seconds when restarting or stopping services.</li><li>Fixed a bug in <code>watch</code> which applied the "rebuild" strategy by default.</li><li>Fixed a race condition, waiting for containers when one exit.</li><li>Added a warning telling users that uid,gid,mode are not implemented for <code>build.secrets</code>.</li><li>Fixed a bug in <code>watch</code> which was watching the whole build context instead of only configured paths.</li><li>Compose now sorts containers by creation date to scale down the older ones first.</li><li>Fixed a bug in the docs generation task for Windows environments.</li><li>Updated the docs to reflect Dry Run mode is feature complete.</li><li>Improved the diagnostic message on network label mismatch.</li><li>Fixed a bug which was rendering <code>Building</code> section when there was no build involved.</li><li>Fixed a bug in code coverage metrics.</li><li>Added OTEL initialization.</li><li>Added a GitHub action to trigger Docker Desktop e2e tests with Compose edge versions.</li><li>Added more ignore rules to dependabot.</li></ul><h2 class=scroll-mt-20 id=2181><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2181">2.18.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-05-17</em><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-15><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-15">Bug fixes and enhancements</a></h3><ul><li>Fixed "Image not found" errors when building images</li></ul><h2 class=scroll-mt-20 id=2180><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2180">2.18.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-05-16</em><h3 class=scroll-mt-20 id=update-17><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-17">Update</a></h3><ul><li>Dependencies upgrade: bump compose-go to v1.13.5</li><li>Dependencies upgrade: bump buildkit to v0.11.6</li><li>Dependencies upgrade: bump docker to v23.0.5</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-16><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-16">Bug fixes and enhancements</a></h3><ul><li>Added dry run support using <code>--dry-run</code></li><li>Added the first (alpha) implementation of the <code>viz</code> sub-command</li><li>Introduced <code>--no-path-resolution</code> to skip relative path to be resolved</li><li>Introduced <code>COMPOSE_ANSI</code> to define the <code>--ansi</code> default value</li><li>Introduced <code>COMPOSE_STATUS_STDOUT</code> to get status messages sent to stdout</li><li>Fixed the BuildKit progressui integration</li><li>Fixed a bug to stop blocking the events loop collecting logs</li><li>Restored support for <code>--memory</code></li><li>Fixed a bug which meant containers didn't stop after termination</li><li>Compose now lets users declare the build secret target</li><li>Fixed a bug which caused a container to be recreated when the config has not changed</li><li>Fixed a race condition when <code>--parallel</code> is used with a large number of dependent services</li><li>Compose now checks the local image matches the required platform</li><li>Fixed local image removal when <code>compose down</code> is ran with <code>--project-name</code></li><li>Compose now detects the active endpoint trying to remove the network and skips with a warning</li><li>Removed unnecessary [] output</li><li>Compose detects that a Windows terminal is not a <code>console.File</code> to avoid a panic</li><li><code>--parallel</code> now has precedence over <code>COMPOSE_PARALLEL_LIMIT</code></li><li>Compose now reports that the external network is not found when Swarm is disabled</li></ul><h2 class=scroll-mt-20 id=2172><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2172">2.17.2</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-03-26</em><h3 class=scroll-mt-20 id=update-18><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-18">Update</a></h3><ul><li>Dependencies upgrade: bump compose-go to v1.13.2</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-17><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-17">Bug fixes and enhancements</a></h3><ul><li>Fixed invalid project name error for directories with uppercase characters or <code>.</code> in the name. Fixed
<a class=link href=https://github.com/docker/compose/issues/10405 target=_blank rel=noopener>compose#10405<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2171><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2171">2.17.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-03-24</em><h3 class=scroll-mt-20 id=update-19><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-19">Update</a></h3><ul><li>Dependencies upgrade: bump buildkit to v0.11.5</li><li>Dependencies upgrade: bump compose-go to v1.13.1</li><li>Dependencies upgrade: bump golang to 1.20.2</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-18><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-18">Bug fixes and enhancements</a></h3><ul><li>Fixed panic on <code>alpha watch</code> command. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10393 target=_blank rel=noopener>compose#10393<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Prevented conflicts for services named <code>extensions</code>. Fixed
<a class=link href=https://github.com/compose-spec/compose-go/issues/247 target=_blank rel=noopener>compose-go#247<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now validates project names more consistently. Fixed
<a class=link href=https://github.com/compose-spec/compose-go/issues/363 target=_blank rel=noopener>compose-go#363<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2170><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2170">2.17.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-03-23</em><h3 class=scroll-mt-20 id=upgrade-notes><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#upgrade-notes">Upgrade notes</a></h3><ul><li>Project name validation is more strictly enforced. Project names can only include letters, numbers, <code>_</code>, <code>-</code> and must be lowercase and start with a letter or number.</li><li>Boolean fields in YAML must be either <code>true</code> or <code>false</code>. Deprecated YAML 1.1 values such as "on" or "no" are not supported.</li><li>Duplicate YAML merge keys (<code>&lt;&lt;</code>) are rejected.</li></ul><h3 class=scroll-mt-20 id=update-20><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-20">Update</a></h3><ul><li>Dependencies upgrade: bump buildkit to v0.11.4</li><li>Dependencies upgrade: bump buildx to v0.10.4</li><li>Dependencies upgrade: bump containerd to 1.6.18</li><li>Dependencies upgrade: bump compose-go to v1.13.0</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-19><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-19">Bug fixes and enhancements</a></h3><ul><li>Introduced <code>--wait-timeout</code> on <code>up</code> command. Fixed
<a class=link href=https://github.com/docker/compose/issues/10269 target=_blank rel=noopener>compose#10269<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Made <code>compose service --hash</code> output sort by service name. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10278 target=_blank rel=noopener>compose#10278<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now renders a compact TUI progress report to monitor layers download. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10281 target=_blank rel=noopener>compose#10281<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Introduced <code>restart</code> for <code>depends_on</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/10284 target=_blank rel=noopener>compose#10284<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added support of <code>NO_COLOR</code> env var. Fixed
<a class=link href=https://github.com/docker/compose/issues/10340 target=_blank rel=noopener>compose#10340<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Progress writer now uses <code>dockercli.Err</code> stream. Fixed
<a class=link href=https://github.com/docker/compose/issues/10366 target=_blank rel=noopener>compose#10366<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added support for <code>additional_contexts</code> in the <code>build</code> service configuration. Fixed
<a class=link href=https://github.com/docker/compose/issues/9461 target=_blank rel=noopener>compose#9461<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>
<a class=link href=https://github.com/docker/compose/issues/9961 target=_blank rel=noopener>compose#9961<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added file delete/rename handling in <code>watch</code> mode. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10386 target=_blank rel=noopener>compose#10386<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Introduced an <code>ignore</code> attribute in <code>watch</code> mode. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10385 target=_blank rel=noopener>compose#10385<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now uses progress writer to show copies status. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10387 target=_blank rel=noopener>compose#10387<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Updated reference documentation for <code>-p</code>/<code>--project-name</code> flag. Fixed
<a class=link href=https://github.com/docker/docs/pull/16915 target=_blank rel=noopener>docs#16915<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>,
<a class=link href=https://github.com/compose-spec/compose-spec/issues/311 target=_blank rel=noopener>compose-spec#311<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Introduced a <code>replace</code> label to track the relationship between old and new containers of a service. Fixed
<a class=link href=https://github.com/docker/compose/issues/9600 target=_blank rel=noopener>compose#9600<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug that meant dependent services were not restarted after a service was restarted. Fixed
<a class=link href=https://github.com/docker/compose/issues/10263 target=_blank rel=noopener>compose#10263<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now ignores services without a build section in <code>watch</code> mode. Fixed
<a class=link href=https://github.com/docker/compose/issues/10270 target=_blank rel=noopener>compose#10270<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now applies config options for pseudo-subcommands. Fixed
<a class=link href=https://github.com/docker/compose/issues/10286 target=_blank rel=noopener>compose#10286<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose manages only containers with config_hash labels (i.e, created by compose). Fixed
<a class=link href=https://github.com/docker/compose/issues/10317 target=_blank rel=noopener>compose#10317<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose triggers an error if the project name is empty after normalization. Fixed
<a class=link href=https://github.com/docker/compose/issues/10313 target=_blank rel=noopener>compose#10313<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose restarts only needed services by checking <code>depends_on</code> relations. Fixed
<a class=link href=https://github.com/docker/compose/issues/10337 target=_blank rel=noopener>compose#10337<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a display issue on small terminals. Fixed
<a class=link href=https://github.com/docker/compose/issues/10322 target=_blank rel=noopener>compose#10322<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed an issue with building the built images IDs collection. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10372 target=_blank rel=noopener>compose#10372<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Use configured name separator to define oneoff container name. Fixed
<a class=link href=https://github.com/docker/compose/issues/10354 target=_blank rel=noopener>compose#10354<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed concurrent map read/write issue when recreating containers. Fixed
<a class=link href=https://github.com/docker/compose/issues/10319 target=_blank rel=noopener>compose#10319<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now supports Dry Run mode for <code>stop</code> and <code>rm</code> commands. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10257 target=_blank rel=noopener>compose#10257<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now supports Dry Run mode for <code>pull</code> command. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10341 target=_blank rel=noopener>compose#10341<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now supports Dry Run mode for <code>push</code> command. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10355 target=_blank rel=noopener>compose#10355<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now supports Dry Run mode for <code>exec</code> command. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10252 target=_blank rel=noopener>compose#10252<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now supports Dry Run mode for <code>restart</code> command. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10339 target=_blank rel=noopener>compose#10339<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2160><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2160">2.16.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-02-08</em><h3 class=scroll-mt-20 id=update-21><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-21">Update</a></h3><ul><li>Dependencies upgrade: bump docker to v23.0.0</li><li>Dependencies upgrade: bump docker-cli to v23.0.0</li><li>Dependencies upgrade: bump buildkit to v0.11.2</li><li>Dependencies upgrade: bump buildx to v0.10.2</li><li>Dependencies upgrade: bump containerd to 1.6.16</li><li>Dependencies upgrade: bump golang to 1.20</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-20><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-20">Bug fixes and enhancements</a></h3><ul><li>Introduced <code>--remove-orphans</code> for the <code>compose create</code> command. Fixed
<a class=link href=https://github.com/docker/compose/issues/9718 target=_blank rel=noopener>compose#9718<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Shortened the TTY output when the terminal is too small. Fixed
<a class=link href=https://github.com/docker/compose/issues/9962 target=_blank rel=noopener>compose#9962<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added <code>remove-orphans</code> functionality to run. Fixed
<a class=link href=https://github.com/docker/compose/issues/9718#issuecomment-1209448445 target=_blank rel=noopener>compose#9718<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Introduced the experimental <code>watch</code> command. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10163 target=_blank rel=noopener>compose#10163<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now allows TTY to be allocated with <code>-t</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/10161 target=_blank rel=noopener>compose#10161<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Introduced the experimental <code>dry-run</code> command. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10173 target=_blank rel=noopener>compose#10173<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Updated the documentation to explain ways to configure parallelism. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10198 target=_blank rel=noopener>compose#10198<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Aligned the <code>logs</code> command with docker CLI by aliasing <code>-n</code> for <code>--tail</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/10199 target=_blank rel=noopener>compose#10199<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added support for <code>docker compose build --push</code>. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10148 target=_blank rel=noopener>compose#10148<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added <code>--scale</code> to the <code>compose create</code> command. Fixed
<a class=link href=https://github.com/docker/compose/issues/10208 target=_blank rel=noopener>compose#10208<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Renamed <code>convert</code> to <code>config</code> to align with the Compose V1 UX. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10214 target=_blank rel=noopener>compose#10214<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now passes the proxy config as build args. Fixed
<a class=link href=https://github.com/docker/compose/issues/8797 target=_blank rel=noopener>compose#8797<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed parsing issue in <code>compose up</code> by ignoring containers not created by Compose. Fixed
<a class=link href=https://github.com/docker/compose/issues/10162#issuecomment-1384989985 target=_blank rel=noopener>compose#10162<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed the goroutine leak in log formatter initialization. Fixed
<a class=link href=https://github.com/docker/compose/issues/10157 target=_blank rel=noopener>compose#10157<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed an issue where compose logs don't exit when all running containers have been stopped. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10181 target=_blank rel=noopener>compose#10181<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed the documentation to reflect <code>docker compose ps</code> being aligned with <code>docker ps</code>. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10195 target=_blank rel=noopener>compose#10195<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed an issue where the remote Buildx driver was not found. Fixed
<a class=link href=https://github.com/docker/compose/issues/9893 target=_blank rel=noopener>compose#9893<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Improved logging when recreating a service container. Pull request
<a class=link href=https://github.com/docker/compose/issues/10236 target=_blank rel=noopener>compose#10236<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed an issue so Compose now only waits for containers concerned by the wait condition. Fixed
<a class=link href=https://github.com/docker/compose/issues/10200 target=_blank rel=noopener>compose#10200<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now prevents assignment to entry in nil map. Fixed
<a class=link href=https://github.com/docker/compose/issues/10244 target=_blank rel=noopener>compose#10244<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added a dedicated GitHub Action workflow for Cucumber tests. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10165 target=_blank rel=noopener>compose#10165<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Cleaned the TUI lines when switching in compact log mode. Fixed
<a class=link href=https://github.com/docker/compose/issues/10201 target=_blank rel=noopener>compose#10201<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added Tilt watcher to detect code changes in watch mode. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10218 target=_blank rel=noopener>compose#10218<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now supports Dry Run mode for <code>kill</code> command. Fixed
<a class=link href=https://github.com/docker/compose/issues/10210 target=_blank rel=noopener>compose#10210<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now supports Dry Run mode for <code>pause</code> command.Fixed
<a class=link href=https://github.com/docker/compose/issues/10217 target=_blank rel=noopener>compose#10217<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now supports Dry Run mode for <code>cp</code> command.Fixed
<a class=link href=https://github.com/docker/compose/issues/10235 target=_blank rel=noopener>compose#10235<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2151><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2151">2.15.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-01-09</em><h3 class=scroll-mt-20 id=update-22><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-22">Update</a></h3><ul><li>Dependencies upgrade to fix Golan CVE-2022-27664 and CVE-2022-32149</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-21><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-21">Bug fixes and enhancements</a></h3><ul><li>Added support for UTS namespace. Fixed
<a class=link href=https://github.com/docker/compose/issues/8408 target=_blank rel=noopener>compose#8408<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed filtering issue when no filter set. Fixed
<a class=link href=https://github.com/docker/roadmap/issues/418 target=_blank rel=noopener>roadmap#418<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed concurrent map writes issue during build step. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10151 target=_blank rel=noopener>compose#10151<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed issue when stdin is not a terminal. Fixed
<a class=link href=https://github.com/docker/compose/issues/9739 target=_blank rel=noopener>compose#9739<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2150><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2150">2.15.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2023-01-05</em><h3 class=scroll-mt-20 id=update-23><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-23">Update</a></h3><ul><li>Dependencies upgrade: bump compose-go to v1.8.1</li><li>Dependencies upgrade: bump cli-docs-tool to 0.5.1</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-22><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-22">Bug fixes and enhancements</a></h3><ul><li>Added support of the <code>privileged</code> attribute in the <code>service.build</code> section. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10112 target=_blank rel=noopener>compose#10112<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Introduced <code>--ignore-buildable</code> to ignore buildable images on pull. Fixed
<a class=link href=https://github.com/docker/compose/issues/8805 target=_blank rel=noopener>compose#8805<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Introduceed <code>--no-attach</code> to ignore some service outputs. Fixed
<a class=link href=https://github.com/docker/compose/issues/8546 target=_blank rel=noopener>compose#8546<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed issue with <code>logs</code> when <code>driver:none</code> is set. Fixed
<a class=link href=https://github.com/docker/compose/issues/9030 target=_blank rel=noopener>compose#9030<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now relies on dockerCLI.streams. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10082 target=_blank rel=noopener>compose#10082<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed issue with service hash that MUST exclude replicas. Fixed
<a class=link href=https://github.com/docker/compose/issues/10077 target=_blank rel=noopener>compose#10077<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now checks service names based on project, not running containers. Fixed
<a class=link href=https://github.com/docker/compose/issues/9951 target=_blank rel=noopener>compose#9951<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed security opts support (seccomp and unconfined). Fixed
<a class=link href=https://github.com/docker/compose/issues/9505 target=_blank rel=noopener>compose#9505<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed empty file when using compose config in case of smaller source files. Fixed
<a class=link href=https://github.com/docker/compose/issues/10121 target=_blank rel=noopener>compose#10121<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed issue with <code>--pull</code> not applied on <code>compose up</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/10125 target=_blank rel=noopener>compose#10125<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose should ignore not only auto-removed containers but also "removal in progress" for orphan containers. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10136 target=_blank rel=noopener>compose#10136<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose limits build concurrency according to <code>--parallel</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/9091 target=_blank rel=noopener>compose#9091<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2142><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2142">2.14.2</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-12-20</em><h3 class=scroll-mt-20 id=update-24><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#update-24">Update</a></h3><ul><li>Dependencies upgrade: bump containerd to 1.6.14</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-23><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-23">Bug fixes and enhancements</a></h3><ul><li>Compose now uses DOCKER_DEFAULT_PLATFORM to determine the platform when creating a container. Fixed
<a class=link href=https://github.com/docker/compose/pull/10041 target=_blank rel=noopener>compose#10041<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now detects when dependency failed to start. Fixed
<a class=link href=https://github.com/docker/compose/pull/9732 target=_blank rel=noopener>compose#9732<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed WCOW volume mounts. Fixed
<a class=link href=https://github.com/docker/compose/pull/9577 target=_blank rel=noopener>compose#9577<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>List only running containers when using <code>--all=false</code>. Fixed
<a class=link href=https://github.com/docker/compose/pull/10085 target=_blank rel=noopener>compose#10085<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a regression when running pull <code>--ignore-pull-failures</code>. Fixed
<a class=link href=https://github.com/docker/compose/pull/10089 target=_blank rel=noopener>compose#10089<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed CPU quota issue. Fixed
<a class=link href=https://github.com/docker/compose/pull/10073 target=_blank rel=noopener>compose#10073<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed race condition on compose logs. Fixed
<a class=link href=https://github.com/docker/compose/pull/8880 target=_blank rel=noopener>compose#8880<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Updated projectOptions to be public by renaming it to ProjectOptions. Fixed
<a class=link href=https://github.com/docker/compose/pull/100102 target=_blank rel=noopener>compose#100102<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2141><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2141">2.14.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-12-15</em><h3 class=scroll-mt-20 id=updates><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates">Updates</a></h3><ul><li>Dependencies upgrade: bump Go to 1.19.4</li><li>Dependencies upgrade: bump containerd to 1.6.12</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-24><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-24">Bug fixes and enhancements</a></h3><ul><li>Added <code>--parallel</code> to limit concurrent engine calls. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10030 target=_blank rel=noopener>compose#10030<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Distinguished stdout and stderr in <code>up</code> logs. Fixed
<a class=link href=https://github.com/docker/compose/issues/8098 target=_blank rel=noopener>compose#8098<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Aligned <code>compose ps</code> output with <code>docker ps</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/6867 target=_blank rel=noopener>compose#6867<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added <code>--include-deps</code> to push command. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10044 target=_blank rel=noopener>compose#10044<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Introduced <code>--timestamp</code> option on <code>compose up</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/5730 target=_blank rel=noopener>compose#5730<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now applies uid/gid when creating a secret from the environment. Pull Request
<a class=link href=https://github.com/docker/compose/pull/10084 target=_blank rel=noopener>compose#10084<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed deadlock when waiting for attached-dependencies. Fixed
<a class=link href=https://github.com/docker/compose/pull/10021 target=_blank rel=noopener>compose#10021<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed race condition when collecting pulled images IDs. Fixed
<a class=link href=https://github.com/docker/compose/pull/9897 target=_blank rel=noopener>compose#9897<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose doesn't stop the <code>pull</code> command for images that can be built. Fixed
<a class=link href=https://github.com/docker/compose/pull/8724 target=_blank rel=noopener>compose#8724<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed corner case when there's no container to attach to. Fixed
<a class=link href=https://github.com/docker/compose/pull/8752 target=_blank rel=noopener>compose#8752<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose containers' startup must run sequentially for engine to assign distinct ports within a configured range. Fixed
<a class=link href=https://github.com/docker/compose/pull/8530 target=_blank rel=noopener>compose#8530<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed parsing of <code>repository:tag</code>. Fixed
<a class=link href=https://github.com/docker/compose/pull/9208 target=_blank rel=noopener>compose#9208<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Load project from files when explicitly set by user. Fixed
<a class=link href=https://github.com/docker/compose/pull/9554 target=_blank rel=noopener>compose#9554<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2140><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2140">2.14.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-12-02</em><h3 class=scroll-mt-20 id=updates-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-1">Updates</a></h3><ul><li>Dependencies upgrade: bump compose-go to
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.8.0 target=_blank rel=noopener>v1.8.0<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Dependencies upgrade: bump Go to 1.19.3</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-25><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-25">Bug fixes and enhancements</a></h3><ul><li>Added <code>oom_score_adj</code> field to service definition. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10019 target=_blank rel=noopener>compose#10019<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added mode field for tmpfs mount permissions. Pull Request
<a class=link href=https://github.com/docker/compose/issues/10031 target=_blank rel=noopener>compose#10031<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now only stops services started by <code>up</code> when interrupted. Fixed
<a class=link href=https://github.com/docker/compose/issues/10028 target=_blank rel=noopener>compose#10028<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now loads implicit profiles for targeted services. Fixed
<a class=link href=https://github.com/docker/compose/issues/10025 target=_blank rel=noopener>compose#10025<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose does not require <code>service.build.platforms</code> to be set if <code>service.platform</code> is set. Fixed
<a class=link href=https://github.com/docker/compose/issues/10017 target=_blank rel=noopener>compose#10017<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Plain output is used during buildx image builds if <code>--ansi=never</code> is set. Fixed
<a class=link href=https://github.com/docker/compose/issues/10020 target=_blank rel=noopener>compose#10020<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li><code>COMPOSE_IGNORE_ORPHANS</code> environment variable now behaves more consistently. Fixed
<a class=link href=https://github.com/docker/compose/issues/10035 target=_blank rel=noopener>compose#10035<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now uses the correct image name separator in <code>convert</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/9904 target=_blank rel=noopener>compose#9904<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed <code>run</code> for services using <code>network_mode: service:NAME</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/10036 target=_blank rel=noopener>compose#10036<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2130><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2130">2.13.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-11-23</em><h3 class=scroll-mt-20 id=updates-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-2">Updates</a></h3><ul><li>Dependencies upgrade: bump containerd to 1.6.10</li><li>Dependencies upgrade: bump docker-credential-helpers to v0.7.0</li><li>Update CI dependencies. Pull Request
<a class=link href=https://github.com/docker/compose/pull/9982 target=_blank rel=noopener>compose#9982<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-26><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-26">Bug fixes and enhancements</a></h3><ul><li>Added a <code>no-consistency</code> option to <code>convert</code> command. Fixed
<a class=link href=https://github.com/docker/compose/issues/9963 target=_blank rel=noopener>compose#9963<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added a <code>build</code> option to <code>run</code> command. Fixed
<a class=link href=https://github.com/docker/compose/issues/10003 target=_blank rel=noopener>compose#10003<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed mapping <code>restart_policy.condition</code> to engine supported values. Fixed
<a class=link href=https://github.com/docker/compose/issues/8756 target=_blank rel=noopener>compose#8756<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>,
<a class=link href=https://github.com/docker/docs/pull/15936 target=_blank rel=noopener>docs#15936<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed missing support of <code>deploy.reservation.memory</code>. Fixed
<a class=link href=https://github.com/docker/compose/issues/9902 target=_blank rel=noopener>compose#9902<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug to prevent usage of <code>COMPOSE_PROFILES</code> when <code>--profile</code> arg is used. Fixed
<a class=link href=https://github.com/docker/compose/issues/9895 target=_blank rel=noopener>compose#9895<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug to prevent pulling a service's image when depending on a service which will build this image. Fixed
<a class=link href=https://github.com/docker/compose/issues/9983 target=_blank rel=noopener>compose#9983<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed parsing issue when a container number label is not found. Fixed
<a class=link href=https://github.com/docker/compose/issues/10004 target=_blank rel=noopener>compose#10004<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Compose now uses the platform value defined by <code>DOCKER_DEFAULT_PLATFORM</code> when no <code>service.platform</code> defined. Fixed
<a class=link href=https://github.com/docker/compose/issues/9889 target=_blank rel=noopener>compose#9889<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Removed usage of the deprecated dependency <code>gotest.tools</code> v2. Pull Request
<a class=link href=https://github.com/docker/compose/pull/9935 target=_blank rel=noopener>compose#9935<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Excluded issues labeled with <code>kind/feature</code> from stale bot process. Fixed
<a class=link href=https://github.com/docker/compose/pull/9988 target=_blank rel=noopener>compose#9988<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h2 class=scroll-mt-20 id=2122><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2122">2.12.2</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-10-21</em><h3 class=scroll-mt-20 id=updates-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-3">Updates</a></h3><ul><li>Updated Docker Engine API to restore compatibility with Golang 1.18 needed for Linux packaging. Pull Request
<a class=link href=https://github.com/docker/compose/pull/9940 target=_blank rel=noopener>compose#9940<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.12.2 target=_blank rel=noopener>Compose repository 2.12.2 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=2121><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2121">2.12.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-10-21</em><h3 class=scroll-mt-20 id=security><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#security">Security</a></h3><ul><li>Updated Docker Engine API to apply fix of
<a class=link href=https://nvd.nist.gov/vuln/detail/CVE-2022-39253 target=_blank rel=noopener>CVE-2022-39253<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>. Pull Request
<a class=link href=https://github.com/docker/compose/pull/9934 target=_blank rel=noopener>compose#9934<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.12.1 target=_blank rel=noopener>Compose repository 2.12.1 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=2120><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2120">2.12.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-10-18</em><h3 class=scroll-mt-20 id=updates-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-4">Updates</a></h3><ul><li><p>CI update to the documentation repository path</p></li><li><p>Upgraded to compose-go from
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.6.0 target=_blank rel=noopener>1.5.1 to 1.6.0<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></p></li><li><p>Updated to go 1.19.2 to address CVE-2022-2879, CVE-2022-2880, CVE-2022-41715</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-27><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-27">Bug fixes and enhancements</a></h3><ul><li>Added a <code>quiet</code> option when pushing an image. Fixed
<a class=link href=https://github.com/docker/compose/issues/9089 target=_blank rel=noopener>compose#9089<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a misleading error message for <code>port</code> command. Pull Request
<a class=link href=https://github.com/docker/compose/pull/9909 target=_blank rel=noopener>compose#9909<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug to prevent failure when Compose tries to remove a non-existing container. Fixed by
<a class=link href=https://github.com/docker/compose/pull/9896/ target=_blank rel=noopener>compose#9896<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Switched GitHub issue template form</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.12.0 target=_blank rel=noopener>Compose repository 2.12.0 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=2112><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2112">2.11.2</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-09-27</em><blockquote><p><strong>Note</strong></p><ul><li>Updates on environment file syntax & interpolation: see
<a class=link href=https://github.com/docker/compose/issues/9879 target=_blank rel=noopener>compose#9879<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Setting <code>DOCKER_HOST</code> via <code>.env</code> files is not supported in Compose v2</li></ul></blockquote><h3 class=scroll-mt-20 id=updates-5><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-5">Updates</a></h3><ul><li>Upgraded to compose-go from
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.6.0 target=_blank rel=noopener>1.5.1 to 1.6.0<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-28><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-28">Bug fixes and enhancements</a></h3><ul><li>Fixed a bug to prevent "invalid template" errors on valid environment variable values. Fixes
<a class=link href=https://github.com/docker/compose/issues/9806 target=_blank rel=noopener>compose##9806<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>,
<a class=link href=https://github.com/docker/compose/issues/9746 target=_blank rel=noopener>compose##9746<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>,
<a class=link href=https://github.com/docker/compose/issues/9704 target=_blank rel=noopener>compose##9704<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>,
<a class=link href=https://github.com/docker/compose/issues/9294 target=_blank rel=noopener>compose##9294<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug to ensure new images from <code>docker compose build</code> are used. Fixes
<a class=link href=https://github.com/docker/compose/issues/9856 target=_blank rel=noopener>compose#9856<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed cross-architecture builds when <code>DOCKER_DEFAULT_PLATFORM</code> not set. Fixes
<a class=link href=https://github.com/docker/compose/pull/9864 target=_blank rel=noopener>compose#9864<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed intermittent conflict errors when using <code>depends_on</code>. Fixes
<a class=link href=https://github.com/docker/compose/issues/9014 target=_blank rel=noopener>compose#9014<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Cleared service <code>CMD</code> when entry point is overridden. Fixes
<a class=link href=https://github.com/docker/compose/issues/9622 target=_blank rel=noopener>compose#9622<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Configured default builder export when no <code>build.platforms</code> defined. Fixes
<a class=link href=https://github.com/docker/compose/issues/9856 target=_blank rel=noopener>compose#9856<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug to keep the platform defined, in priority, via DOCKER_DEFAULT_PLATFORM or the <code>service.platform</code> attribut. Fixes
<a class=link href=https://github.com/docker/compose/issues/9864 target=_blank rel=noopener>compose#9864<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Removed support for <code>DOCKER_HOST</code> in <code>.env</code> files. Fixes
<a class=link href=https://github.com/docker/compose/issues/9210 target=_blank rel=noopener>compose#9210<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug to ensure clean service command if entry point is overridden in run command. Fixes
<a class=link href=https://github.com/docker/compose/issues/9622 target=_blank rel=noopener>compose#9622<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Deps: fixed race condition during graph traversal. Fixes
<a class=link href=https://github.com/docker/compose/issues/9014 target=_blank rel=noopener>compose#9014<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>CI now runs on Windows & macOS including E2E tests via Docker Desktop</li><li>Added more information when <code>service.platform</code> isn't part of <code>service.build.platforms</code></li><li>GitHub Workflows security hardening</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.11.2 target=_blank rel=noopener>Compose repository 2.11.2 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=2111><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2111">2.11.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-09-20</em><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-29><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-29">Bug fixes and enhancements</a></h3><ul><li>Fixed a bug to keep <code>depends_on</code> condition when service has <code>volumes_from</code>. Fixes
<a class=link href=https://github.com/docker/compose/issues/9843 target=_blank rel=noopener>compose#9843<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug to keep the platform defined at service level during build if no build platforms. Fixes
<a class=link href=https://github.com/docker/compose/pull/9729#issuecomment-1246748144 target=_blank rel=noopener>compose#9729<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug to keep the platform defined via DOCKER_DEFAULT_PLATFORM during build if no build platforms provided. Fixes
<a class=link href=https://github.com/docker/compose/issues/9853 target=_blank rel=noopener>compose#9853<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.11.1 target=_blank rel=noopener>Compose repository 2.11.1 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=2110><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2110">2.11.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-09-14</em><h3 class=scroll-mt-20 id=updates-6><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-6">Updates</a></h3><ul><li>Dependencies upgrade: bump Golang to 1.19.1</li><li>Dependencies upgrade: bump github.com/docker/go-units from 0.4.0 to 0.5.0</li><li>Dependencies upgrade: bump github.com/cnabio/cnab-to-oci from 0.3.6 to 0.3.7</li><li>Dependencies upgrade: bump go.opentelemetry.io/otel from 1.9.0 to 1.10.0</li><li>Dependencies upgrade: bump github.com/AlecAivazis/survey/v2 from 2.3.5</li><li>Dependencies upgrade: bump go.opentelemetry.io/otel from 1.4.1 to 1.9.0</li><li>Dependencies upgrade: bump compose-go from
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.5.1 target=_blank rel=noopener>1.5.0 to 1.5.1<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-30><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-30">Bug fixes and enhancements</a></h3><ul><li>Added platforms build. Fixes
<a class=link href=https://github.com/compose-spec/compose-spec/pull/267 target=_blank rel=noopener>compose-spec#267<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Logs now filter to services from current Compose file. Fixes
<a class=link href=https://github.com/docker/compose/issues/9801 target=_blank rel=noopener>compose#9801<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Added an improved output warning when pulling images. Fixes
<a class=link href=https://github.com/docker/compose/issues/9820 target=_blank rel=noopener>compose#9820<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed a bug to ensure correct capture of exit code when service has dependencies. Fixes
<a class=link href=https://github.com/docker/compose/issues/9778 target=_blank rel=noopener>compose#9778<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed <code>down</code> with <code>--rmi</code>. Fixes
<a class=link href=https://github.com/docker/compose/issues/9655 target=_blank rel=noopener>compose#9655<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed docker-compose convert that turns $ into $$ when using the --no-interpolate option. Fixes
<a class=link href=https://github.com/docker/compose/issues/9160 target=_blank rel=noopener>compose#9160<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Fixed <code>build.go</code> access custom labels directly cause panic. See
<a class=link href=https://github.com/docker/compose/pull/9810 target=_blank rel=noopener>compose#9810<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Applied newly loaded envvars to "DockerCli" and "APIClient". Fixes
<a class=link href=https://github.com/docker/compose/issues/9210 target=_blank rel=noopener>compose#9210<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Only attempt to start specified services on <code>compose start [services]</code>. Fixes
<a class=link href=https://github.com/docker/compose/issues/9796 target=_blank rel=noopener>compose#9796<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>
<a class=link href=https://github.com/docker/compose/issues/9807 target=_blank rel=noopener>compose#9807<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li><li>Label built images for reliable cleanup on <code>down</code>. Fixes
<a class=link href=https://github.com/docker/compose/issues/9655 target=_blank rel=noopener>compose#9655<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.11.0 target=_blank rel=noopener>Compose repository 2.11.0 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=2102><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2102">2.10.2</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-08-26</em><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-31><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-31">Bug fixes and enhancements</a></h3><ul><li>Properly respect <code>DOCKER_TLS_VERIFY</code> and <code>DOCKER_CERT_PATH</code> environment variables. Fixes
<a class=link href=https://github.com/docker/compose/issues/9789 target=_blank rel=noopener>compose#9789<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Improved <code>Makefile</code> used in
<a class=link href=https://github.com/docker/docker-ce-packaging/pull/742 target=_blank rel=noopener>docker/docker-ce-packaging#742<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.10.2 target=_blank rel=noopener>Compose repository 2.10.2 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=2101><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2101">2.10.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-08-24</em><h3 class=scroll-mt-20 id=updates-7><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-7">Updates</a></h3><ul><li>Dependencies update: Bumped github.com/moby/buildkit from
<a class=link href=https://github.com/moby/buildkit/releases/tag/v0.10.4 target=_blank rel=noopener>0.10.3 to 0.10.4<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-32><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-32">Bug fixes and enhancements</a></h3><ul><li>Fixed image pulls being skipped when <code>pull_policy</code> was not set. Fixes
<a class=link href=https://github.com/docker/compose/issues/9773 target=_blank rel=noopener>compose#9773<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Restored <code>.sha256</code> checksum files in release artifacts. Fixes
<a class=link href=https://github.com/docker/compose/issues/9772 target=_blank rel=noopener>compose#9772<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Removed error message showing exit code when using --exit-code-from. Fixes
<a class=link href=https://github.com/docker/compose/issues/9782 target=_blank rel=noopener>compose#9782<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>compose pull</code> to pull images even when they existed locally if <code>tag=latest</code>.</li><li>CI: Fixed checksums checking and brought back individual checksum files.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.10.1 target=_blank rel=noopener>Compose repository 2.10.1 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=2100><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#2100">2.10.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-08-19</em><h3 class=scroll-mt-20 id=new><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new">New</a></h3><ul><li>Applied newly loaded environment variables to <code>DockerCli</code> and <code>APIClient</code>. Fixes
<a class=link href=https://github.com/docker/compose/issues/9210 target=_blank rel=noopener>compose#9210<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Added support for windows/arm64 and linux/riscv64.</li></ul><h3 class=scroll-mt-20 id=updates-8><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-8">Updates</a></h3><ul><li>Updated Dockerfile syntax to latest stable and renamed docs Dockerfile.</li><li>Dependencies update: Upgraded BuildKit & docker/distribution.</li><li>Dependencies update: Updated Docker CLI version used in CI to v20.10.17.</li><li>Dependencies update: Bumped github.com/containerd/containerd from
<a class=link href=https://github.com/containerd/containerd/releases/tag/v1.6.7 target=_blank rel=noopener>1.6.6 to 1.6.7<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies update: Bump github.com/containerd/containerd from
<a class=link href=https://github.com/containerd/containerd/releases/tag/v1.6.8 target=_blank rel=noopener>1.6.7 to 1.6.8<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies update: Bumped to Go 1.18.5.</li><li>Dependencies update: Bumped github.com/cnabio/cnab-to-oci from
<a class=link href=https://github.com/cnabio/cnab-to-oci/releases/tag/v0.3.6 target=_blank rel=noopener>0.3.5 to 0.3.6<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-33><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-33">Bug fixes and enhancements</a></h3><ul><li>Reverted environment variables precedence to OS over <code>.env</code> file. Fixes
<a class=link href=https://github.com/docker/compose/issues/9737 target=_blank rel=noopener>compose#9737<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Updated usage strings for consistency.</li><li>Resolved environment variables case-insensitively on Windows. Fixes
<a class=link href=https://github.com/docker/compose/issues/9431 target=_blank rel=noopener>compose#9431<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>compose up</code> so dependency containers aren't stopped when a stop signal is issued. This keeps parity with v1 behavior-wise.</li><li>Fixes
<a class=link href=https://github.com/docker/compose/issues/9696 target=_blank rel=noopener>compose#9696<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed commands that start/restart/pause/unpause so that, if ran from the Compose file, the Compose model is also applied. Fixes
<a class=link href=https://github.com/docker/compose/issues/9705 target=_blank rel=noopener>compose#9705<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a> and
<a class=link href=https://github.com/docker/compose/issues/9671 target=_blank rel=noopener>compose#9705<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Removed extra whitespaces in help text of some subcommands.</li><li>Fixed <code>compose create</code> to not override service pull policy when the value from the command line is configured as the default. Fixes
<a class=link href=https://github.com/docker/compose/issues/9717 target=_blank rel=noopener>compose#9717<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Filtered out "commandConn.Close- warning" message. Fixes
<a class=link href=https://github.com/docker/compose/issues/8544 target=_blank rel=noopener>compose#8544<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed up/start/run to not wait for disabled dependency. Fixes
<a class=link href=https://github.com/docker/compose/issues/9591 target=_blank rel=noopener>compose#9591<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Applied Compose model on <code>compose kill</code>, added <code>--remove-orphans</code> option. Fixes
<a class=link href=https://github.com/docker/compose/issues/9742 target=_blank rel=noopener>compose#9742<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>compose pull</code> to avoid pulling the same images multiple times. Fixes
<a class=link href=https://github.com/docker/compose/issues/8768 target=_blank rel=noopener>compose#8768<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed version of golangci-lint to v1.47.3, issue with v1.48.0 for now.</li></ul><p>For the full change log, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.10.0 target=_blank rel=noopener>Compose repository 2.10.0 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=290><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#290">2.9.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-08-7</em><blockquote class=important><p><strong>Important</strong></p><p>Compose v2.9.0 contains changes to the environment variable's precedence that have since been reverted. We recommend using v2.10+ to avoid compatibility issues.</p></blockquote><blockquote><p><strong>Note</strong></p><p>This release reverts the breaking changes introduced in
<a class=link href="release-notes.html#280">Compose v2.8.0</a> by
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.3.0 target=_blank rel=noopener><code>compose-go v1.3.0</code><span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p></blockquote><h3 class=scroll-mt-20 id=updates-9><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-9">Updates</a></h3><ul><li>Updated
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.4.0 target=_blank rel=noopener><code>compose-go</code> to v1.4.0<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a> as previous version introduced breaking changes. Fixes
<a class=link href=https://github.com/docker/compose/issues/9700 target=_blank rel=noopener>compose#9700<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-34><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-34">Bug fixes and enhancements</a></h3><ul><li>Overwritten parent commands PreRun code for <code>compose version</code>. Fixes
<a class=link href=https://github.com/docker/compose/issues/9698 target=_blank rel=noopener>compose#9698<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>LinkLocalIPs</code> in V2. Fixes
<a class=link href=https://github.com/docker/compose/issues/9692 target=_blank rel=noopener>compose#9692<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Linked to <code>BUILDING.md</code> for testing instructions. Fixes
<a class=link href=https://github.com/docker/compose/issues/9439 target=_blank rel=noopener>compose#9439<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.9.0 target=_blank rel=noopener>Compose repository 2.9.0 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=280><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#280">2.8.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-07-29</em><blockquote class=important><p><strong>Important</strong></p><p>This release introduced a breaking change via <code>compose-go v1.3.0</code> and this
<a class=link href=https://github.com/compose-spec/compose-go/pull/294 target=_blank rel=noopener>PR<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.
In this release, Docker Compose recreates new resources (networks, volumes, secrets, configs, etc.) with new names, using a <code>-</code> (dash) instead an <code>_</code> (underscore) and tries to connect to or use these newly created resources instead of your existing ones!</p><p>Please use Compose the v2.9.0 release instead.</p></blockquote><h3 class=scroll-mt-20 id=new-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-1">New</a></h3><ul><li>Introduced <code>--pull</code> flag to allow the force pull of updated service images. Fixes
<a class=link href=https://github.com/docker/compose/issues/9451 target=_blank rel=noopener>compose#9451<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Increased code quality by adding <code>gocritic</code> to the linters.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-35><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-35">Bug fixes and enhancements</a></h3><ul><li>Fixed interpolation error message output. Fixes
<a class=link href=https://github.com/compose-spec/compose-go/pull/292 target=_blank rel=noopener>compose-spec/compose-go#292<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Defined precedence of the environment variables evaluation. Fixes
<a class=link href=https://github.com/docker/compose/issues/9606 target=_blank rel=noopener>compose#9521<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>,
<a class=link href=https://github.com/docker/compose/issues/9638 target=_blank rel=noopener>compose#9638<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>,
<a class=link href=https://github.com/docker/compose/issues/9608 target=_blank rel=noopener>compose#9608<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>,
<a class=link href=https://github.com/docker/compose/issues/9578 target=_blank rel=noopener>compose#9578<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.
<a class=link href=https://github.com/docker/compose/issues/9468 target=_blank rel=noopener>compose#9468<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>, and
<a class=link href=https://github.com/docker/compose/issues/9468 target=_blank rel=noopener>compose#9683<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Docs CI: Fixed to use push-to-fork when creating a PR.</li><li>Used environmental variable for golang's version and updates GitHub Actions from v2 to v3.</li><li>Used
<a class=link href=https://github.com/google/addlicense target=_blank rel=noopener>google/addlicense<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a> instead of
<a class=link href=https://github.com/kunalkushwaha/ltag target=_blank rel=noopener>kunalkushwaha/ltag<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.8.0 target=_blank rel=noopener>Compose repository 2.8.0 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=270><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#270">2.7.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-07-20</em><h3 class=scroll-mt-20 id=new-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-2">New</a></h3><ul><li>Added support for environment secrets during build step. Fixes
<a class=link href=https://github.com/docker/compose/issues/9606 target=_blank rel=noopener>compose#9606<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><h3 class=scroll-mt-20 id=updates-10><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-10">Updates</a></h3><ul><li>Dependencies upgrade: bumped
<a class=link href=https://github.com/golang/go/compare/go1.18.3...go1.18.4 target=_blank rel=noopener>go to 1.18.4<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies upgrade: bumped
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.2.9 target=_blank rel=noopener>compose-go to v1.2.9<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-36><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-36">Bug fixes and enhancements</a></h3><ul><li>Networks: prevented issues due to duplicate names. Fixes
<a class=link href=https://github.com/moby/moby/issues/18864 target=_blank rel=noopener>moby/moby#18864<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed issue with close networks name on <code>compose up</code> and <code>compose down</code> commands. Fixes
<a class=link href=https://github.com/docker/compose/issues/9044 target=_blank rel=noopener>compose#9630<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Used appropriate dependency condition for one-shot containers when running <code>compose up --wait</code>. Fixes
<a class=link href=https://github.com/docker/compose/pull/9572 target=_blank rel=noopener>compose#9606<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed environment variable expansion.</li><li>Validated depended-on services exist in consistency check. Fixes
<a class=link href=https://github.com/docker/compose/issues/8910 target=_blank rel=noopener>compose#8910<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed hash usage in environment values. Fixes
<a class=link href=https://github.com/docker/compose/issues/9509 target=_blank rel=noopener>compose#9509<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Docker Build: added fix to respect dependency order for classic builder. Fixes
<a class=link href=https://github.com/docker/compose/issues/8538 target=_blank rel=noopener>compose#8538<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed panic caused by empty string argument. Fixes
<a class=link href=https://github.com/docker/compose-switch/issues/35 target=_blank rel=noopener>compose-switch#35<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed start/restart as to not impact one-off containers. Fixes
<a class=link href=https://github.com/docker/compose/issues/9044 target=_blank rel=noopener>compose#9509<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed to keep the container reference when <code>volumes_from</code> targets a container and not a service. Fixes
<a class=link href=https://github.com/docker/compose/issues/8874 target=_blank rel=noopener>compose#8874<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>build.go: added fix to initialize <code>CustomLabels</code> map if <code>nil</code>.</li><li>Added new targets to build Compose binary before running e2e tests.</li><li>CI: released workflow to open a PR on docs repo with latest changes.</li><li>e2e: added test for <code>ps</code>.</li><li>e2e: split out pause tests and add more cases.</li><li>e2e: add more start/stop test cases.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.7.0 target=_blank rel=noopener>Compose repository 2.7.0 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=261><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#261">2.6.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-06-23</em><h3 class=scroll-mt-20 id=new-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-3">New</a></h3><ul><li>Added support for setting secrets from environment variable. Fixes
<a class=link href=https://github.com/compose-spec/compose-spec/issues/251 target=_blank rel=noopener>compose-spec/compose-spec#251<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><h3 class=scroll-mt-20 id=updates-11><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-11">Updates</a></h3><ul><li>Upgrade: compose-go
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.2.8 target=_blank rel=noopener>v1.2.8<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Upgrade: buildx
<a class=link href=https://github.com/docker/buildx/releases/tag/v0.8.2 target=_blank rel=noopener>v0.8.2<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies upgrade: bumped runc
<a class=link href=https://github.com/opencontainers/runc/releases/tag/v1.1.2 target=_blank rel=noopener>to 1.1.2<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies upgrade: bumped golang to
<a class=link href=https://go.dev/doc/devel/release#go1.18.minor target=_blank rel=noopener>1.18.3<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies upgrade: bumped compose-go to
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.2.8 target=_blank rel=noopener>v1.2.8<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies upgrade: bumped github.com/theupdateframework/notary from 0.6.1 to 0.7.0.</li><li>Dependencies upgrade: bumped github.com/cnabio/cnab-to-oci from 0.3.1-beta1 to 0.3.3.</li><li>Dependencies upgrade: bumped github.com/hashicorp/go-version from 1.3.0 to 1.5.0.</li><li>Dependencies upgrade: bumped github.com/stretchr/testify from 1.7.0 to 1.7.2.</li><li>Dependencies upgrade: bumped github.com/docker/buildx from 0.8.1 to 0.8.2.</li><li>Dependencies upgrade: bumped github.com/AlecAivazis/survey/v2 from 2.3.2 to 2.3.5.</li><li>Dependencies upgrade: bumped github.com/containerd/containerd from 1.6.2 to 1.6.6.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-37><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-37">Bug fixes and enhancements</a></h3><ul><li>Added links to container create request. Fixes
<a class=link href=https://github.com/docker/compose/issues/9513 target=_blank rel=noopener>#9513<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>compose run</code> to start only direct dependencies. Fixes
<a class=link href=https://github.com/docker/compose/issues/9459 target=_blank rel=noopener>#9459<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>compose up</code> 'service not found' errors when using <code>--no-deps</code> option. Fixes
<a class=link href=https://github.com/docker/compose/issues/9427 target=_blank rel=noopener>#9427<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>compose down</code> to respect <code>COMPOSE_REMOVE_ORPHANS</code> environment variable. Fixes
<a class=link href=https://github.com/docker/compose/issues/9562 target=_blank rel=noopener>#9562<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed project-level bind mount volumes. Fixes
<a class=link href=https://github.com/docker/for-mac/issues/6317 target=_blank rel=noopener>docker/for-mac#6317<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed parsing of properties <code>deploy.limits.cpus</code> and <code>deploy.limits.pids</code> to respect floating-point values. Fixes
<a class=link href=https://github.com/docker/compose/issues/9542 target=_blank rel=noopener>#9542<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a> and
<a class=link href=https://github.com/docker/compose/issues/9501 target=_blank rel=noopener>#9501<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>compose ps</code> output to list all exposed ports. Fixes
<a class=link href=https://github.com/docker/compose/issues/9527 target=_blank rel=noopener>#9257<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed spelling mistakes in <code>compose ps</code> code.</li><li>Fixed <code>docker compose</code> to honor <code>--no-ansi</code> even when deprecated option is requested.</li><li>Fixed network name and network ID possible ambiguity.</li><li>e2e: added test for <code>ps</code>.</li><li>e2e: unmarshalled json into container summaries.</li><li>e2e: fixed subtests and block parallel unsafe tests.</li><li>e2e: isolated test command env from system env.</li><li>e2e: fixed spurious <code>ps</code> failures.</li><li>e2e: ensured all compose commands standalone compatible.</li><li>e2e: improved test output on failures.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.6.1 target=_blank rel=noopener>Compose repository 2.6.1 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=260><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#260">2.6.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-05-30</em><h3 class=scroll-mt-20 id=new-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-4">New</a></h3><ul><li>Added the tags property to the build section. In this property tags can be defined to be applied to the final image, in addition to the one defined in the image property.</li><li>Added end-to-end tests to ensure there is no regression on environment variables precedence.</li><li>Added ddev's end-to-end test.</li></ul><h3 class=scroll-mt-20 id=updates-12><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-12">Updates</a></h3><ul><li>Dependencies update: bumping
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.2.6 target=_blank rel=noopener>compose-go to 1.2.6<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies update: bumping
<a class=link href=https://github.com/compose-spec/compose-go/releases/tag/v1.2.7 target=_blank rel=noopener>compose-go to 1.2.7<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies update: bumping
<a class=link href=https://go.dev/doc/devel/release#go1.18 target=_blank rel=noopener>golang to 1.18<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-38><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-38">Bug fixes and enhancements</a></h3><ul><li>Fixed <code>compose up</code> to attach only to services declared in project with enabled profiles. Fixes
<a class=link href=https://github.com/docker/compose/issues/9286 target=_blank rel=noopener>#9286<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed flickering prompt when pulling same image from multiple services. Fixes
<a class=link href=https://github.com/docker/compose/issues/9469 target=_blank rel=noopener>#9469<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed compose go to import .env file to OS environment to allow setting variables (such as DOCKER_BUILDKIT) through this file. Fixes
<a class=link href=https://github.com/docker/compose/issues/9345 target=_blank rel=noopener>#9345<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>TestLocalComposeUp</code> that failed locally.</li><li>Fixed local run of make <code>e2e-compose-standalone</code>.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.6.0 target=_blank rel=noopener>Compose repository 2.6.0 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=251><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#251">2.5.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-05-17</em><h3 class=scroll-mt-20 id=updates-13><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-13">Updates</a></h3><ul><li>Dependencies updates: bumping compose-go to 1.2.5.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-39><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-39">Bug fixes and enhancements</a></h3><ul><li>Fixed resolution of project's working directive absolute path when a relative path is declared using '--env-file'. Fixes
<a class=link href=https://github.com/docker/for-mac/issues/6229 target=_blank rel=noopener>docker/for-mac#6229<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>compose down</code>: now rejects all arguments in order to clarify usage. Fixes
<a class=link href=https://github.com/docker/compose/issues/9151 target=_blank rel=noopener>#9151<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed <code>compose down</code>: now exits with status=0 if there is nothing to remove. Fixes
<a class=link href=https://github.com/docker/compose/issues/9426 target=_blank rel=noopener>#9426<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed extra space printed in logs output lines with --no-log-prefix option. Fixes
<a class=link href=https://github.com/docker/compose/issues/9464 target=_blank rel=noopener>#9464<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Clarified what the default work dir is when multiple compose files are passed.</li><li>cp command: copy to all containers of a service as default behavior.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.5.1 target=_blank rel=noopener>Compose repository 2.5.1 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=250><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#250">2.5.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-04-29</em><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-40><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-40">Bug fixes and enhancements</a></h3><ul><li>Fixed panic with <code>compose down</code> command when <code>-p</code> flag specified. Fixes
<a class=link href=https://github.com/docker/compose/issues/9353 target=_blank rel=noopener>#9353<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Passed newly created project as input to start services (<code>docker compose up</code>). Fixes
<a class=link href=https://github.com/docker/compose/issues/9356 target=_blank rel=noopener>#9356<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Included services declared under links in docker-compose file as implicit dependencies. Fixes
<a class=link href=https://github.com/docker/compose/issues/9301 target=_blank rel=noopener>#9301<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Added changes <code>docker compose pull</code> command to respect defined policy: 1) skip services configured as <code>pull_policy: never</code> and 2) ignore those with an existing image and <code>pull_policy: missing</code>. Fixes
<a class=link href=https://github.com/docker/compose/issues/3660 target=_blank rel=noopener>#3660<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Error building project from resources is no longer ignored in order to prevent <code>down</code> panic. Fixes
<a class=link href=https://github.com/docker/compose/issues/9383 target=_blank rel=noopener>#9383<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Enforced project name to be lowercase. Fixes
<a class=link href=https://github.com/docker/compose/issues/9378 target=_blank rel=noopener>#9378<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Added support to build-time secrets. Fixes
<a class=link href=https://github.com/docker/compose/issues/6358 target=_blank rel=noopener>#6358<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Changed <code>compose-go</code> to allow (re)building volume string to be used by engine <code>bind</code> API when mount can't be used. Fixes
<a class=link href=https://github.com/docker/compose/issues/9380 target=_blank rel=noopener>#9380<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Provided checksums.txt file and added <code>--binary</code> to allow verification in different OS. Fixes
<a class=link href=https://github.com/docker/compose/issues/9388 target=_blank rel=noopener>#9388<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Added changes so locally pulled image's ID is inspected and persisted to <code>com.docker.compose.image</code>. Fixes
<a class=link href=https://github.com/docker/compose/issues/9357 target=_blank rel=noopener>#9357<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed issue regarding IPAM gateway setup. Fixes
<a class=link href=https://github.com/docker/compose/issues/9330 target=_blank rel=noopener>#9330<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Added support for ppc64le archictecture for docker compose binary.</li><li>Fixed search/replace typo in <code>--no-TTY</code> documentation.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.5.0 target=_blank rel=noopener>Compose repository 2.5.0 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=241><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#241">2.4.1</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-04-04</em><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-41><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-41">Bug fixes and enhancements</a></h3><ul><li>Passed the <code>--rm flag</code> value as is to the Docker CLI when running a container with this flag. Fixes
<a class=link href=https://github.com/docker/compose/issues/9314 target=_blank rel=noopener>#9314<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Added ssh config to the build options when building an image from a <code>docker compose up</code> command. Fixes
<a class=link href=https://github.com/docker/compose/issues/9338 target=_blank rel=noopener>#9338<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Added inspection to container checking if a TTY is required. Running services with <code>tty:true</code> specified now show console output. Fixes
<a class=link href=https://github.com/docker/compose/issues/9288 target=_blank rel=noopener>#9288<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.4.1 target=_blank rel=noopener>Compose repository 2.4.1 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=240><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#240">2.4.0</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-04-1</em><h3 class=scroll-mt-20 id=updates-14><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-14">Updates</a></h3><ul><li>Dependencies update: Bumped buildx to v0.8.1. to fix possible panic on handling build context scanning errors.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-42><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-42">Bug fixes and enhancements</a></h3><ul><li>Passed the interactive flag '-i' from the Compose CLI to the Docker one to run exec command. Fixes
<a class=link href=https://github.com/docker/compose/issues/9315 target=_blank rel=noopener>#9315<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Compose commands now take the value of <code>COMPOSE_PROJECT_NAME</code> environmental variable into consideration. Fixes
<a class=link href=https://github.com/docker/compose/issues/9316 target=_blank rel=noopener>#9316<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed issue of <code>compose down</code> command that when executed in contexts without any services started or resources to be deleted was returning an error. Error was due to command trying to delete an inexistent default network. Fixes
<a class=link href=https://github.com/docker/compose/issues/9333 target=_blank rel=noopener>#9333<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Introduced support for <code>cache_from</code>, <code>cache_to</code>, <code>no_cache</code> and <code>pull</code> attributes in the build section. These attributes allow forcing a complete rebuild from sources and checking with registry for images used. These changes provide the basis for offering <code>--no-cache</code> and <code>--pull</code> options for compose build (or equivalent) command down the line.</li><li>Introduced support of an <code>--ssh</code> flag for the <code>build</code> command from CLI and Compose file. Fixes
<a class=link href=https://github.com/docker/compose/issues/7025 target=_blank rel=noopener>#7025<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Fixed typo in <code>--ssh</code> flag description. Related to
<a class=link href=https://github.com/docker/compose/issues/7025 target=_blank rel=noopener>#7025<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Pinned Kubernetes dependencies to the same version as in buildx.</li><li>Passed the interactive flag from the Compose CLI to the Docker one to run exec command.</li><li>Fixed race condition on start-stop end-to-end tests running in parallel.</li><li>Removed code regarding an obsolete warning.</li><li>Vendor: github.com/containerd/containerd v1.6.2. Includes a fix for CVE-2022-24769 (doesn't affect our codebase).</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.4.0 target=_blank rel=noopener>Compose repository 2.4.0 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=234><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#234">2.3.4</a></h2><em class="italic text-gray-light-500 dark:text-gray-dark-500">2022-03-25</em><h3 class=scroll-mt-20 id=new-5><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-5">New</a></h3><ul><li>Introduced changes to use RunExec and RunStart from docker/cli to handle all the interactive/tty/* terminal logic.</li></ul><h3 class=scroll-mt-20 id=removed><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#removed">Removed</a></h3><ul><li>Removed a container with no candidate now produces a warning instead of an error. Fixes
<a class=link href=https://github.com/docker/compose/issues/9255 target=_blank rel=noopener>#9255<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Removed the "Deprecated" mentions from -i and -t options to run and exec commands. These options are on by default and in use. Fixes
<a class=link href=https://github.com/docker/compose/pull/9229#discussion_r819730788 target=_blank rel=noopener>#9229<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Removed the "Deprecated" mention from the --filter flag, to keep consistency with other commands.</li><li>Removed the need to get the original compose.yaml file to run 'docker compose kill'.</li></ul><h3 class=scroll-mt-20 id=updates-15><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#updates-15">Updates</a></h3><ul><li>Dependencies update: Bumped github.com/spf13/cobra from 1.3.0 to 1.4.0. Cobra library no longer requires Viper and all of its indirect dependencies
<a class=link href=https://github.com/spf13/cobra/releases target=_blank rel=noopener>See cobra's release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Dependencies update: Bumped buildx from v0.7.1 to v0.8.0.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-and-enhancements-43><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-and-enhancements-43">Bug fixes and enhancements</a></h3><ul><li>Recovered behavior for 'compose up -d' of recreating containers of compose file images with refreshed content. Fixes
<a class=link href=https://github.com/docker/compose/issues/9259 target=_blank rel=noopener>#9259<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Docker compose --status, --filter and --format flags documentation updates.</li><li><code>docker compose down -v</code> now does not remove external volumes and networks as per the option's expected and documented behavior. Whenever project is specified it is also now used to enforce down to only remove resources listed in compose.yaml file.
Fixes
<a class=link href=https://github.com/docker/compose/issues/9172 target=_blank rel=noopener>#9172<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>,
<a class=link href=https://github.com/docker/compose/issues/9145 target=_blank rel=noopener>#9145<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</li><li>Changed Compose API reference docs automation to pick up diffs code vs. docs.</li></ul><p>For the full change log or additional information, check the
<a class=link href=https://github.com/docker/compose/releases/tag/v2.3.4 target=_blank rel=noopener>Compose repository 2.3.4 release page<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=other-releases><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#other-releases">Other Releases</a></h2><p>(2022-03-8 to 2022-04-14)</p><p>For the releases later than 1.29.2 and earlier than 2.3.4, please check the
<a class=link href=https://github.com/docker/compose/releases target=_blank rel=noopener>Compose repository release pages<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=1292><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1292">1.29.2</a></h2><p>(2021-05-10)</p><h3 class=scroll-mt-20 id=miscellaneous><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#miscellaneous">Miscellaneous</a></h3><ul><li><p>Removed the prompt to use <code>docker-compose</code> in the <code>up</code> command.</p></li><li><p>Bumped <code>py</code> to <code>1.10.0</code> in <code>requirements-indirect.txt</code>.</p></li></ul><h2 class=scroll-mt-20 id=1291><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1291">1.29.1</a></h2><p>(2021-04-13)</p><h3 class=scroll-mt-20 id=bugs><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bugs">Bugs</a></h3><ul><li><p>Fixed invalid handler warning on Windows builds.</p></li><li><p>Fixed config hash to trigger container re-creation on IPC mode updates.</p></li><li><p>Fixed conversion map for <code>placement.max_replicas_per_node</code>.</p></li><li><p>Removed extra scan suggestion on build.</p></li></ul><h2 class=scroll-mt-20 id=1290><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1290">1.29.0</a></h2><p>(2021-04-06)</p><h3 class=scroll-mt-20 id=features><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#features">Features</a></h3><ul><li><p>Added profile filter to <code>docker-compose config</code>.</p></li><li><p>Added a <code>depends_on</code> condition to wait for successful service completion.</p></li></ul><h3 class=scroll-mt-20 id=miscellaneous-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#miscellaneous-1">Miscellaneous</a></h3><ul><li><p>Added an image scan message on build.</p></li><li><p>Updated warning message for <code>--no-ansi</code> to mention <code>--ansi never</code> as alternative.</p></li><li><p>Bumped docker-py to 5.0.0.</p></li><li><p>Bumped PyYAML to 5.4.1.</p></li><li><p>Bumped python-dotenv to 0.17.0.</p></li></ul><h2 class=scroll-mt-20 id=1286><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1286">1.28.6</a></h2><p>(2021-03-23)</p><h3 class=scroll-mt-20 id=bug-fixes><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes">Bug fixes</a></h3><ul><li><p>Made <code>--env-file</code> relative to the current working directory. Environment file paths set with <code>--env-file</code> are now relative to the current working directory and override the default <code>.env</code> file located in the project directory.</p></li><li><p>Fixed missing service property <code>storage_opt</code> by updating the Compose schema.</p></li><li><p>Fixed build <code>extra_hosts</code> list format.</p></li><li><p>Removed additional error message on <code>exec</code>.</p></li></ul><h3 class=scroll-mt-20 id=miscellaneous-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#miscellaneous-2">Miscellaneous</a></h3><ul><li>Added <code>compose.yml</code> and <code>compose.yaml</code> to the default filename list.</li></ul><h2 class=scroll-mt-20 id=1285><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1285">1.28.5</a></h2><p>(2021-02-26)</p><h3 class=scroll-mt-20 id=bugs-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bugs-1">Bugs</a></h3><ul><li><p>Fixed the OpenSSL version mismatch error when shelling out to the SSH client (via bump to docker-py 4.4.4 which contains the fix).</p></li><li><p>Added missing build flags to the native builder: <code>platform</code>, <code>isolation</code> and <code>extra_hosts</code>.</p></li><li><p>Removed info message on native build.</p></li><li><p>Fixed the log fetching bug when service logging driver is set to 'none'.</p></li></ul><h2 class=scroll-mt-20 id=1284><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1284">1.28.4</a></h2><p>(2021-02-18)</p><h3 class=scroll-mt-20 id=bug-fixes-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-1">Bug fixes</a></h3><ul><li>Fixed SSH port parsing by bumping docker-py to 4.4.3.</li></ul><h3 class=scroll-mt-20 id=miscellaneous-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#miscellaneous-3">Miscellaneous</a></h3><ul><li>Bumped Python to 3.7.10.</li></ul><h2 class=scroll-mt-20 id=1283><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1283">1.28.3</a></h2><p>(2021-02-17)</p><h3 class=scroll-mt-20 id=bug-fixes-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-2">Bug fixes</a></h3><ul><li><p>Fixed SSH hostname parsing when it contains a leading 's'/'h', and removed the quiet option that was hiding the error (via docker-py bump to 4.4.2).</p></li><li><p>Fixed key error for <code>--no-log-prefix</code> option.</p></li><li><p>Fixed incorrect CLI environment variable name for service profiles: <code>COMPOSE_PROFILES</code> instead of <code>COMPOSE_PROFILE</code>.</p></li><li><p>Fixed the fish completion.</p></li></ul><h3 class=scroll-mt-20 id=miscellaneous-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#miscellaneous-4">Miscellaneous</a></h3><ul><li><p>Bumped cryptography to 3.3.2.</p></li><li><p>Removed the log driver filter.</p></li></ul><p>For a list of PRs and issues fixed in this release, see
<a class=link href="https://github.com/docker/compose/milestone/53?closed=1" target=_blank rel=noopener>Compose 1.28.3<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p><h2 class=scroll-mt-20 id=1282><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1282">1.28.2</a></h2><p>(2021-01-26)</p><h3 class=scroll-mt-20 id=bug-fixes-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-3">Bug fixes</a></h3><ul><li><p>Revert to Python 3.7 bump for Linux static builds</p></li><li><p>Add bash completion for <code>docker-compose logs|up --no-log-prefix</code></p></li></ul><h3 class=scroll-mt-20 id=miscellaneous-5><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#miscellaneous-5">Miscellaneous</a></h3><ul><li>CI setup update</li></ul><h2 class=scroll-mt-20 id=1280><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1280">1.28.0</a></h2><p>(2021-01-20)</p><h3 class=scroll-mt-20 id=features-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#features-1">Features</a></h3><ul><li><p>Added support for NVIDIA GPUs through device requests.</p></li><li><p>Added support for service profiles.</p></li><li><p>Changed the SSH connection approach to the Docker CLI by shelling out to the local SSH client. Set the <code>COMPOSE_PARAMIKO_SSH=1</code> environment variable to enable the old behavior.</p></li><li><p>Added a flag to disable log prefix.</p></li><li><p>Added a flag for ANSI output control.</p></li><li><p>Docker Compose now uses the native Docker CLI's <code>build</code> command when building images. Set the <code>COMPOSE_DOCKER_CLI_BUILD=0</code> environment variable to disable this feature.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-4">Bug fixes</a></h3><ul><li><p>Made <code>parallel_pull=True</code> by default.</p></li><li><p>Restored the warning for configs in non-swarm mode.</p></li><li><p>Took <code>--file</code> into account when defining <code>project_dir</code>.</p></li><li><p>Fixed a service attach bug on <code>compose up</code>.</p></li></ul><h3 class=scroll-mt-20 id=miscellaneous-6><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#miscellaneous-6">Miscellaneous</a></h3><ul><li><p>Added usage metrics.</p></li><li><p>Synced schema with COMPOSE specification.</p></li><li><p>Improved failure report for missing mandatory environment variables.</p></li><li><p>Bumped <code>attrs</code> to 20.3.0.</p></li><li><p>Bumped <code>more_itertools</code> to 8.6.0.</p></li><li><p>Bumped <code>cryptograhy</code> to 3.2.1.</p></li><li><p>Bumped <code>cffi</code> to 1.14.4.</p></li><li><p>Bumped <code>virtualenv</code> to 20.2.2.</p></li><li><p>Bumped <code>bcrypt</code> to 3.2.0.</p></li><li><p>Bumped GitPython to 3.1.11.</p></li><li><p>Bumped <code>docker-py</code> to 4.4.1.</p></li><li><p>Bumped Python to 3.9.</p></li><li><p>Linux: bumped Debian base image from stretch to buster (required for Python 3.9).</p></li><li><p>macOS: Bumped OpenSSL 1.1.1g to 1.1.1h, and Python 3.7.7 to 3.9.0.</p></li><li><p>Bumped PyInstaller to 4.1.</p></li><li><p>Relaxed the restriction on base images to latest minor.</p></li><li><p>Updated READMEs.</p></li></ul><h2 class=scroll-mt-20 id=1274><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1274">1.27.4</a></h2><p>(2020-09-24)</p><h3 class=scroll-mt-20 id=bug-fixes-5><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-5">Bug fixes</a></h3><ul><li><p>Removed path checks for bind mounts.</p></li><li><p>Fixed port rendering to output long form syntax for non-v1.</p></li><li><p>Added protocol to the Docker socket address.</p></li></ul><h2 class=scroll-mt-20 id=1273><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1273">1.27.3</a></h2><p>(2020-09-16)</p><h3 class=scroll-mt-20 id=bug-fixes-6><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-6">Bug fixes</a></h3><ul><li><p>Merged <code>max_replicas_per_node</code> on <code>docker-compose config</code>.</p></li><li><p>Fixed <code>depends_on</code> serialization on <code>docker-compose config</code>.</p></li><li><p>Fixed scaling when some containers are not running on <code>docker-compose up</code>.</p></li><li><p>Enabled relative paths for <code>driver_opts.device</code> for <code>local</code> driver.</p></li><li><p>Allowed strings for <code>cpus</code> fields.</p></li></ul><h2 class=scroll-mt-20 id=1272><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1272">1.27.2</a></h2><p>(2020-09-10)</p><h3 class=scroll-mt-20 id=bug-fixes-7><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-7">Bug fixes</a></h3><ul><li>Fixed bug on <code>docker-compose run</code> container attach.</li></ul><h2 class=scroll-mt-20 id=1271><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1271">1.27.1</a></h2><p>(2020-09-10)</p><h3 class=scroll-mt-20 id=bug-fixes-8><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-8">Bug fixes</a></h3><ul><li><p>Fixed <code>docker-compose run</code> when <code>service.scale</code> is specified.</p></li><li><p>Allowed the <code>driver</code> property for external networks as a temporary workaround for the Swarm network propagation issue.</p></li><li><p>Pinned the new internal schema version to <code>3.9</code> as the default.</p></li><li><p>Preserved the version number configured in the Compose file.</p></li></ul><h2 class=scroll-mt-20 id=1270><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1270">1.27.0</a></h2><p>(2020-09-07)</p><h3 class=scroll-mt-20 id=features-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#features-2">Features</a></h3><ul><li><p>Merged 2.x and 3.x Compose formats and aligned with <code>COMPOSE_SPEC</code> schema.</p></li><li><p>Implemented service mode for <code>ipc</code>.</p></li><li><p>Passed <code>COMPOSE_PROJECT_NAME</code> environment variable in container mode.</p></li><li><p>Made <code>run</code> behave in the same way as <code>up</code>.</p></li><li><p>Used <code>docker build</code> on <code>docker-compose run</code> when <code>COMPOSE_DOCKER_CLI_BUILD</code> environment variable is set.</p></li><li><p>Used the docker-py default API version for engine queries (<code>auto</code>).</p></li><li><p>Parsed <code>network_mode</code> on build.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-9><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-9">Bug fixes</a></h3><ul><li><p>Ignored build context path validation when building is not required.</p></li><li><p>Fixed float to bytes conversion via docker-py bump to 4.3.1.</p></li><li><p>Fixed the scale bug when the deploy section is set.</p></li><li><p>Fixed <code>docker-py</code> bump in <code>setup.py</code>.</p></li><li><p>Fixed experimental build failure detection.</p></li><li><p>Fixed context propagation to the Docker CLI.</p></li></ul><h3 class=scroll-mt-20 id=miscellaneous-7><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#miscellaneous-7">Miscellaneous</a></h3><ul><li><p>Bumped <code>docker-py</code> to 4.3.1.</p></li><li><p>Bumped <code>tox</code> to 3.19.0.</p></li><li><p>Bumped <code>virtualenv</code> to 20.0.30.</p></li><li><p>Added script for Docs synchronization.</p></li></ul><h2 class=scroll-mt-20 id=1262><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1262">1.26.2</a></h2><p>(2020-07-02)</p><h3 class=scroll-mt-20 id=bug-fixes-10><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-10">Bug fixes</a></h3><ul><li>Enforced <code>docker-py</code> 4.2.2 as minimum version when installing with pip.</li></ul><h2 class=scroll-mt-20 id=1261><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1261">1.26.1</a></h2><p>(2020-06-30)</p><h3 class=scroll-mt-20 id=features-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#features-3">Features</a></h3><ul><li>Bumped <code>docker-py</code> from 4.2.1 to 4.2.2.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-11><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-11">Bug fixes</a></h3><ul><li><p>Enforced <code>docker-py</code> 4.2.1 as minimum version when installing with pip.</p></li><li><p>Fixed context load for non-docker endpoints.</p></li></ul><h2 class=scroll-mt-20 id=1260><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1260">1.26.0</a></h2><p>(2020-06-03)</p><h3 class=scroll-mt-20 id=features-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#features-4">Features</a></h3><ul><li><p>Added <code>docker context</code> support.</p></li><li><p>Added missing test dependency <code>ddt</code> to <code>setup.py</code>.</p></li><li><p>Added <code>--attach-dependencies</code> to command <code>up</code> for attaching to dependencies.</p></li><li><p>Allowed compatibility option with <code>COMPOSE_COMPATIBILITY</code> environment variable.</p></li><li><p>Bumped <code>Pytest</code> to 5.3.4 and add refactor compatibility with the new version.</p></li><li><p>Bumped <code>OpenSSL</code> from 1.1.1f to 1.1.1g.</p></li><li><p>Bumped <code>certifi</code> from 2019.11.28 to 2020.4.5.1.</p></li><li><p>Bumped <code>docker-py</code> from 4.2.0 to 4.2.1.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-12><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-12">Bug fixes</a></h3><ul><li><p>Properly escaped values coming from <code>env_files</code>.</p></li><li><p>Synchronized compose-schemas with upstream (docker/cli).</p></li><li><p>Removed <code>None</code> entries on exec command.</p></li><li><p>Added <code>distro</code> package to get distro information.</p></li><li><p>Added <code>python-dotenv</code> to delegate <code>.env</code> file processing.</p></li><li><p>Stopped adjusting output on terminal width when piped into another command.</p></li><li><p>Showed an error message when <code>version</code> attribute is malformed.</p></li><li><p>Fixed HTTPS connection when <code>DOCKER_HOST</code> is remote.</p></li></ul><h2 class=scroll-mt-20 id=1255><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1255">1.25.5</a></h2><p>(2020-04-10)</p><h3 class=scroll-mt-20 id=features-5><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#features-5">Features</a></h3><ul><li><p>Bumped OpenSSL from 1.1.1d to 1.1.1f.</p></li><li><p>Added Compose version 3.8.</p><ul><li>Limited service scale to the size specified by the field <code>deploy.placement.max_replicas_per_node</code>.</li></ul></li></ul><h2 class=scroll-mt-20 id=1254><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1254">1.25.4</a></h2><p>(2020-02-03)</p><h3 class=scroll-mt-20 id=bug-fixes-13><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-13">Bug fixes</a></h3><ul><li><p>Fixed the CI script to enforce the minimal MacOS version to 10.11.</p></li><li><p>Fixed docker-compose exec for keys with no value on environment files.</p></li></ul><h2 class=scroll-mt-20 id=1253><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1253">1.25.3</a></h2><p>(2020-01-23)</p><h3 class=scroll-mt-20 id=bug-fixes-14><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-14">Bug fixes</a></h3><ul><li><p>Fixed the CI script to enforce the compilation with Python3.</p></li><li><p>Updated the binary's sha256 on the release page.</p></li></ul><h2 class=scroll-mt-20 id=1252><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1252">1.25.2</a></h2><p>(2020-01-20)</p><h3 class=scroll-mt-20 id=new-features><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features">New features</a></h3><ul><li>Docker Compose now allows the compatibility option with <code>COMPOSE_COMPATIBILITY</code> environment variable.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-15><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-15">Bug fixes</a></h3><ul><li><p>Fixed an issue that caused Docker Compose to crash when the <code>version</code> field was set to an invalid value. Docker Compose now displays an error message when invalid values are used in the version field.</p></li><li><p>Fixed an issue that caused Docker Compose to render messages incorrectly when running commands outside a terminal.</p></li></ul><h2 class=scroll-mt-20 id=1251><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1251">1.25.1</a></h2><p>(2020-01-06)</p><h3 class=scroll-mt-20 id=bugfixes><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bugfixes">Bugfixes</a></h3><ul><li><p>Decoded the <code>APIError</code> explanation to Unicode before using it to create and start a container.</p></li><li><p>Docker Compose discards <code>com.docker.compose.filepaths</code> labels that have <code>None</code> as value. This usually occurs when labels originate from stdin.</p></li><li><p>Added OS X binary as a directory to solve slow start up time issues caused by macOS Catalina binary scan.</p></li><li><p>Passed the <code>HOME</code> environment variable in container mode when running with <code>script/run/run.sh</code>.</p></li><li><p>Docker Compose now reports images that cannot be pulled, however, are required to be built.</p></li></ul><h2 class=scroll-mt-20 id=1250><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1250">1.25.0</a></h2><p>(2019-11-18)</p><h3 class=scroll-mt-20 id=new-features-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-1">New features</a></h3><ul><li><p>Set no-colors to true by changing <code>CLICOLOR</code> env variable to <code>0</code>.</p></li><li><p>Added working directory, config files, and env file to service labels.</p></li><li><p>Added ARM build dependencies.</p></li><li><p>Added BuildKit support (use <code>DOCKER_BUILDKIT=1</code> and <code>COMPOSE_DOCKER_CLI_BUILD=1</code>).</p></li><li><p>Raised Paramiko to version 2.6.0.</p></li><li><p>Added the following tags: <code>docker-compose:latest</code>, <code>docker-compose:&lt;version>-alpine</code>, and <code>docker-compose:&lt;version>-debian</code>.</p></li><li><p>Raised <code>docker-py</code> to version 4.1.0.</p></li><li><p>Enhanced support for <code>requests</code>, up to version 2.22.0.</p></li><li><p>Removed empty tag on <code>build:cache_from</code>.</p></li><li><p><code>Dockerfile</code> enhancement that provides for the generation of <code>libmusl</code> binaries for Alpine Linux.</p></li><li><p>Pulling only of images that cannot be built.</p></li><li><p>The <code>scale</code> attribute now accepts <code>0</code> as a value.</p></li><li><p>Added a <code>--quiet</code> option and a <code>--no-rm</code> option to the <code>docker-compose build</code> command.</p></li><li><p>Added a <code>--no-interpolate</code> option to the <code>docker-compose config</code> command.</p></li><li><p>Raised OpenSSL for MacOS build from <code>1.1.0</code> to <code>1.1.1c</code>.</p></li><li><p>Added support for the <code>docker-compose.yml</code> file's <code>credential_spec</code> configuration option.</p></li><li><p>Resolution of digests without having to pull the image.</p></li><li><p>Upgraded <code>pyyaml</code> to version <code>4.2b1</code>.</p></li><li><p>Lowered the severity to <code>warning</code> for instances in which <code>down</code> attempts to remove a non-existent image.</p></li><li><p>Mandated the use of improved API fields for project events, when possible.</p></li><li><p>Updated <code>setup.py</code> for modern <code>pypi/setuptools</code>, and removed <code>pandoc</code> dependencies.</p></li><li><p>Removed <code>Dockerfile.armhf</code>, which is no longer required.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-16><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-16">Bug fixes</a></h3><ul><li><p>Made container service color deterministic, including the removal of the color red.</p></li><li><p>Fixed non-ASCII character errors (Python 2 only).</p></li><li><p>Changed image sizing to decimal format, to align with Docker CLI.</p></li><li><p><code>tty</code> size acquired through Python POSIX support.</p></li><li><p>Fixed same file <code>extends</code> optimization.</p></li><li><p>Fixed <code>stdin_open</code>.</p></li><li><p>Fixed the issue of <code>--remove-orphans</code> being ignored encountered during use with <code>up --no-start</code> option.</p></li><li><p>Fixed <code>docker-compose ps --all</code> command.</p></li><li><p>Fixed the <code>depends_on</code> dependency recreation behavior.</p></li><li><p>Fixed bash completion for the <code>docker-compose build --memory</code> command.</p></li><li><p>Fixed the misleading environmental variables warning that occurs when the <code>docker-compose exec</code> command is performed.</p></li><li><p>Fixed the failure check in the <code>parallel_execute_watch function</code>.</p></li><li><p>Fixed the race condition that occurs following the pulling of an image.</p></li><li><p>Fixed error on duplicate mount points (a configuration error message now displays).</p></li><li><p>Fixed the merge on <code>networks</code> section.</p></li><li><p>Compose container is always connected to <code>stdin</code> by default.</p></li><li><p>Fixed the presentation of failed services on the <code>docker-compose start</code> command when containers are not available.</p></li></ul><h2 class=scroll-mt-20 id=1241><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1241">1.24.1</a></h2><p>(2019-06-24)</p><p>This release contains minor improvements and bug fixes.</p><h2 class=scroll-mt-20 id=1240><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1240">1.24.0</a></h2><p>(2019-03-28)</p><h3 class=scroll-mt-20 id=features-6><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#features-6">Features</a></h3><ul><li><p>Added support for connecting to the Docker Engine using the <code>ssh</code> protocol.</p></li><li><p>Added an <code>--all</code> flag to <code>docker-compose ps</code> to include stopped one-off containers
in the command's output.</p></li><li><p>Added bash completion for <code>ps --all|-a</code>.</p></li><li><p>Added support for credential_spec.</p></li><li><p>Added <code>--parallel</code> to <code>docker build</code>'s options in <code>bash</code> and <code>zsh</code> completion.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-17><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-17">Bug fixes</a></h3><ul><li><p>Fixed a bug where some valid credential helpers weren't properly handled by Compose
when attempting to pull images from private registries.</p></li><li><p>Fixed an issue where the output of <code>docker-compose start</code> before containers were created
was misleading.</p></li><li><p>Compose will no longer accept whitespace in variable names sourced from environment files.
This matches the Docker CLI behavior.</p></li><li><p>Compose will now report a configuration error if a service attempts to declare
duplicate mount points in the volumes section.</p></li><li><p>Fixed an issue with the containerized version of Compose that prevented users from
writing to stdin during interactive sessions started by <code>run</code> or <code>exec</code>.</p></li><li><p>One-off containers started by <code>run</code> no longer adopt the restart policy of the service,
and are instead set to never restart.</p></li><li><p>Fixed an issue that caused some container events to not appear in the output of
the <code>docker-compose events</code> command.</p></li><li><p>Missing images will no longer stop the execution of <code>docker-compose down</code> commands. A warning is
now displayed instead.</p></li><li><p>Force <code>virtualenv</code> version for macOS CI.</p></li><li><p>Fixed merging of Compose files when network has <code>None</code> config.</p></li><li><p>Fixed <code>CTRL+C</code> issues by enabling <code>bootloader_ignore_signals</code> in <code>pyinstaller</code>.</p></li><li><p>Bumped <code>docker-py</code> version to <code>3.7.2</code> to fix SSH and proxy configuration issues.</p></li><li><p>Fixed release script and some typos on release documentation.</p></li></ul><h2 class=scroll-mt-20 id=1232><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1232">1.23.2</a></h2><p>(2018-11-28)</p><h3 class=scroll-mt-20 id=bug-fixes-18><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-18">Bug fixes</a></h3><ul><li><p>Reverted a 1.23.0 change that appended random strings to container names
created by <code>docker-compose up</code>, causing addressability issues.</p><blockquote><p><strong>Note</strong>: Containers created by <code>docker-compose run</code> will continue to use
randomly generated names to avoid collisions during parallel runs.</p></blockquote></li><li><p>Fixed an issue where some <code>dockerfile</code> paths would fail unexpectedly when
attempting to build on Windows.</p></li><li><p>Fixed a bug where build context URLs would fail to build on Windows.</p></li><li><p>Fixed a bug that caused <code>run</code> and <code>exec</code> commands to fail for some otherwise
accepted values of the <code>--host</code> parameter.</p></li><li><p>Fixed an issue where overrides for the <code>storage_opt</code> and <code>isolation</code> keys in
service definitions weren't properly applied.</p></li><li><p>Fixed a bug where some invalid Compose files would raise an uncaught
exception during validation.</p></li></ul><h2 class=scroll-mt-20 id=1231><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1231">1.23.1</a></h2><p>(2018-11-01)</p><h3 class=scroll-mt-20 id=bug-fixes-19><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-19">Bug fixes</a></h3><ul><li><p>Fixed a bug where working with containers created with a version of Compose earlier than <code>1.23.0</code>
would cause unexpected crashes.</p></li><li><p>Fixed an issue where the behavior of the <code>--project-directory</code> flag would
vary depending on which subcommand was used.</p></li></ul><h2 class=scroll-mt-20 id=1230><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1230">1.23.0</a></h2><p>(2018-10-30)</p><h3 class=scroll-mt-20 id=important-note><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#important-note">Important note</a></h3><p>The default naming scheme for containers created by Compose in this version
has changed from <code>&lt;project>_&lt;service>_&lt;index></code> to
<code>&lt;project>_&lt;service>_&lt;index>_&lt;slug></code>, where <code>&lt;slug></code> is a randomly-generated
hexadecimal string. Please make sure to update scripts relying on the old
naming scheme accordingly before upgrading.</p><h3 class=scroll-mt-20 id=features-7><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#features-7">Features</a></h3><ul><li><p>Logs for containers restarting after a crash will now appear in the output
of the <code>up</code> and <code>logs</code> commands.</p></li><li><p>Added <code>--hash</code> option to the <code>docker-compose config</code> command, allowing users
to print a hash string for each service's configuration to facilitate rolling
updates.</p></li><li><p>Added <code>--parallel</code> flag to the <code>docker-compose build</code> command, allowing
Compose to build up to 5 images simultaneously.</p></li><li><p>Output for the <code>pull</code> command now reports status / progress even when pulling
multiple images in parallel.</p></li><li><p>For images with multiple names, Compose will now attempt to match the one
present in the service configuration in the output of the <code>images</code> command.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-20><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-20">Bug fixes</a></h3><ul><li><p>Fixed an issue where parallel <code>run</code> commands for the same service would fail due to name
collisions.</p></li><li><p>Fixed an issue where paths longer than 260 characters on Windows clients would
cause <code>docker-compose build</code> to fail.</p></li><li><p>Fixed a bug where attempting to mount <code>/var/run/docker.sock</code> with
Docker Desktop for Windows would result in failure.</p></li><li><p>The <code>--project-directory</code> option is now used by Compose to determine where to
look for the <code>.env</code> file.</p></li><li><p><code>docker-compose build</code> no longer fails when attempting to pull an image with
credentials provided by the <em><strong>gcloud credential helper</strong></em>.</p></li><li><p>Fixed the <code>--exit-code-from</code> option in <code>docker-compose up</code> to always report
the actual exit code even when the watched container is not the cause of the
exit.</p></li><li><p>Fixed an issue that would prevent recreating a service in some cases where
a volume would be mapped to the same mountpoint as a volume declared within the Dockerfile for that image.</p></li><li><p>Fixed a bug that caused hash configuration with multiple networks to be
inconsistent, causing some services to be unnecessarily restarted.</p></li><li><p>Fixed a bug that would cause failures with variable substitution for services
with a name containing one or more dot characters.</p></li><li><p>Fixed a pipe handling issue when using the containerized version of Compose.</p></li><li><p>Fixed a bug causing <code>external: false</code> entries in the Compose file to be
printed as <code>external: true</code> in the output of <code>docker-compose config</code>.</p></li><li><p>Fixed a bug where issuing a <code>docker-compose pull</code> command on services
without a defined image key would cause Compose to crash.</p></li><li><p>Volumes and binds are now mounted in the order they are declared in the
service definition.</p></li></ul><h3 class=scroll-mt-20 id=miscellaneous-8><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#miscellaneous-8">Miscellaneous</a></h3><ul><li>The <code>zsh</code> completion script has been updated with new options, and no
longer suggests container names where service names are expected.</li></ul><h2 class=scroll-mt-20 id=1220><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1220">1.22.0</a></h2><p>(2018-07-17)</p><h3 class=scroll-mt-20 id=new-features-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-2">New features</a></h3><h4 class=scroll-mt-20 id=compose-format-version-37><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-format-version-37">Compose format version 3.7</a></h4><ul><li><p>Introduced version 3.7 of the <code>docker-compose.yml</code> specification.
This version requires Docker Engine 18.06.0 or above.</p></li><li><p>Added support for <code>rollback_config</code> in the deploy configuration</p></li><li><p>Added support for the <code>init</code> parameter in service configurations</p></li><li><p>Added support for extension fields in service, network, volume, secret,
and config configurations</p></li></ul><h4 class=scroll-mt-20 id=compose-format-version-24><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-format-version-24">Compose format version 2.4</a></h4><ul><li>Added support for extension fields in service, network,
and volume configurations</li></ul><h3 class=scroll-mt-20 id=bug-fixes-21><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-21">Bug fixes</a></h3><ul><li><p>Fixed a bug that prevented deployment with some Compose files when
<code>DOCKER_DEFAULT_PLATFORM</code> was set</p></li><li><p>Compose will no longer try to create containers or volumes with
invalid starting characters</p></li><li><p>Fixed several bugs that prevented Compose commands from working properly
with containers created with an older version of Compose</p></li><li><p>Fixed an issue with the output of <code>docker-compose config</code> with the
<code>--compatibility-mode</code> flag enabled when the source file contains
attachable networks</p></li><li><p>Fixed a bug that prevented the <code>gcloud</code> credential store from working
properly when used with the Compose binary on UNIX</p></li><li><p>Fixed a bug that caused connection errors when trying to operate
over a non-HTTPS TCP connection on Windows</p></li><li><p>Fixed a bug that caused builds to fail on Windows if the Dockerfile
was located in a subdirectory of the build context</p></li><li><p>Fixed an issue that prevented proper parsing of UTF-8 BOM encoded
Compose files on Windows</p></li><li><p>Fixed an issue with handling of the double-wildcard (<code>**</code>) pattern in <code>.dockerignore</code> files when using <code>docker-compose build</code></p></li><li><p>Fixed a bug that caused auth values in legacy <code>.dockercfg</code> files to be ignored</p></li><li><p><code>docker-compose build</code> will no longer attempt to create image names starting with an invalid character</p></li></ul><h2 class=scroll-mt-20 id=1212><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1212">1.21.2</a></h2><p>(2018-05-03)</p><h3 class=scroll-mt-20 id=bug-fixes-22><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-22">Bug fixes</a></h3><ul><li>Fixed a bug where the ip_range attribute in IPAM configs was prevented
from passing validation</li></ul><h2 class=scroll-mt-20 id=1211><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1211">1.21.1</a></h2><p>(2018-04-27)</p><h3 class=scroll-mt-20 id=bug-fixes-23><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-23">Bug fixes</a></h3><ul><li><p>In 1.21.0, we introduced a change to how project names are sanitized for
internal use in resource names. This caused issues when manipulating an
existing, deployed application whose name had changed as a result.
This release properly detects resources using "legacy" naming conventions.</p></li><li><p>Fixed an issue where specifying an in-context Dockerfile using an absolute
path would fail despite being valid.</p></li><li><p>Fixed a bug where IPAM option changes were incorrectly detected, preventing
redeployments.</p></li><li><p>Validation of v2 files now properly checks the structure of IPAM configs.</p></li><li><p>Improved support for credentials stores on Windows to include binaries using
extensions other than <code>.exe</code>. The list of valid extensions is determined by
the contents of the <code>PATHEXT</code> environment variable.</p></li><li><p>Fixed a bug where Compose would generate invalid binds containing duplicate
elements with some v3.2 files, triggering errors at the Engine level during
deployment.</p></li></ul><h2 class=scroll-mt-20 id=1210><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1210">1.21.0</a></h2><p>(2018-04-11)</p><h3 class=scroll-mt-20 id=new-features-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-3">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-24><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-24">Compose file version 2.4</a></h4><ul><li><p>Introduced version 2.4 of the <code>docker-compose.yml</code> specification.
This version requires Docker Engine 17.12.0 or above.</p></li><li><p>Added support for the <code>platform</code> parameter in service definitions.
If supplied, the parameter is also used when performing build for the
service.</p></li></ul><h4 class=scroll-mt-20 id=compose-file-version-22-and-up><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-22-and-up">Compose file version 2.2 and up</a></h4><ul><li>Added support for the <code>cpu_rt_period</code> and <code>cpu_rt_runtime</code> parameters
in service definitions (2.x only).</li></ul><h4 class=scroll-mt-20 id=compose-file-version-21-and-up><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-21-and-up">Compose file version 2.1 and up</a></h4><ul><li><p>Added support for the <code>cpu_period</code> parameter in service definitions
(2.x only).</p></li><li><p>Added support for the <code>isolation</code> parameter in service build configurations.
Additionally, the <code>isolation</code> parameter in service definitions is used for
builds as well if no <code>build.isolation</code> parameter is defined. (2.x only)</p></li></ul><h4 class=scroll-mt-20 id=all-formats><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#all-formats">All formats</a></h4><ul><li><p>Added support for the <code>--workdir</code> flag in <code>docker-compose exec</code>.</p></li><li><p>Added support for the <code>--compress</code> flag in <code>docker-compose build</code>.</p></li><li><p><code>docker-compose pull</code> is now performed in parallel by default. You can
opt out using the <code>--no-parallel</code> flag. The <code>--parallel</code> flag is now
deprecated and will be removed in a future version.</p></li><li><p>Dashes and underscores in project names are no longer stripped out.</p></li><li><p><code>docker-compose build</code> now supports the use of Dockerfile from outside
the build context.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-24><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-24">Bug fixes</a></h3><ul><li><p>Compose now checks that the volume's configuration matches the remote
volume, and errors out if a mismatch is detected.</p></li><li><p>Fixed a bug that caused Compose to raise unexpected errors when attempting
to create several one-off containers in parallel.</p></li><li><p>Fixed a bug with argument parsing when using <code>docker-machine config</code> to
generate TLS flags for <code>exec</code> and <code>run</code> commands.</p></li><li><p>Fixed a bug where variable substitution with an empty default value
(e.g. <code>${VAR:-}</code>) would print an incorrect warning.</p></li><li><p>Improved resilience when encoding of the Compose file doesn't match the
system's. Users are encouraged to use UTF-8 when possible.</p></li><li><p>Fixed a bug where external overlay networks in Swarm would be incorrectly
recognized as inexistent by Compose, interrupting otherwise valid
operations.</p></li></ul><h2 class=scroll-mt-20 id=1200><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1200">1.20.0</a></h2><p>(2018-03-20)</p><h3 class=scroll-mt-20 id=new-features-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-4">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-36><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-36">Compose file version 3.6</a></h4><ul><li><p>Introduced version 3.6 of the <code>docker-compose.yml</code> specification.
This version must be used with Docker Engine 18.02.0 or above.</p></li><li><p>Added support for the <code>tmpfs.size</code> property in volume mappings</p></li></ul><h4 class=scroll-mt-20 id=compose-file-version-32-and-up><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-32-and-up">Compose file version 3.2 and up</a></h4><ul><li>The <code>--build-arg</code> option can now be used without specifying a service
in <code>docker-compose build</code></li></ul><h4 class=scroll-mt-20 id=compose-file-version-23><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-23">Compose file version 2.3</a></h4><ul><li><p>Added support for <code>device_cgroup_rules</code> in service definitions</p></li><li><p>Added support for the <code>tmpfs.size</code> property in long-form volume mappings</p></li><li><p>The <code>--build-arg</code> option can now be used without specifying a service
in <code>docker-compose build</code></p></li></ul><h4 class=scroll-mt-20 id=all-formats-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#all-formats-1">All formats</a></h4><ul><li><p>Added a <code>--log-level</code> option to the top-level <code>docker-compose</code> command.
Accepted values are <code>debug</code>, <code>info</code>, <code>warning</code>, <code>error</code>, <code>critical</code>.
Default log level is <code>info</code></p></li><li><p><code>docker-compose run</code> now allows users to unset the container's entrypoint</p></li><li><p>Proxy configuration found in the <code>~/.docker/config.json</code> file now populates
environment and build args for containers created by Compose</p></li><li><p>Added the <code>--use-aliases</code> flag to <code>docker-compose run</code>, indicating that
network aliases declared in the service's config should be used for the
running container</p></li><li><p>Added the <code>--include-deps</code> flag to <code>docker-compose pull</code></p></li><li><p><code>docker-compose run</code> now kills and removes the running container upon
receiving <code>SIGHUP</code></p></li><li><p><code>docker-compose ps</code> now shows the containers' health status if available</p></li><li><p>Added the long-form <code>--detach</code> option to the <code>exec</code>, <code>run</code> and <code>up</code>
commands</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-25><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-25">Bug fixes</a></h3><ul><li><p>Fixed <code>.dockerignore</code> handling, notably with regard to absolute paths
and last-line precedence rules</p></li><li><p>Fixed an issue where Compose would make costly DNS lookups when connecting
to the Engine when using Docker For Mac</p></li><li><p>Fixed a bug introduced in 1.19.0 which caused the default certificate path
to not be honored by Compose</p></li><li><p>Fixed a bug where Compose would incorrectly check whether a symlink's
destination was accessible when part of a build context</p></li><li><p>Fixed a bug where <code>.dockerignore</code> files containing lines of whitespace
caused Compose to error out on Windows</p></li><li><p>Fixed a bug where <code>--tls*</code> and <code>--host</code> options wouldn't be properly honored
for interactive <code>run</code> and <code>exec</code> commands</p></li><li><p>A <code>seccomp:&lt;filepath></code> entry in the <code>security_opt</code> config now correctly
sends the contents of the file to the engine</p></li><li><p>ANSI output for <code>up</code> and <code>down</code> operations should no longer affect the wrong
lines</p></li><li><p>Improved support for non-unicode locales</p></li><li><p>Fixed a crash occurring on Windows when the user's home directory name
contained non-ASCII characters</p></li><li><p>Fixed a bug occurring during builds caused by files with a negative <code>mtime</code>
values in the build context</p></li><li><p>Fixed an encoding bug when streaming build progress</p></li></ul><h2 class=scroll-mt-20 id=1190><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1190">1.19.0</a></h2><p>(2018-02-07)</p><h3 class=scroll-mt-20 id=breaking-changes><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#breaking-changes">Breaking changes</a></h3><ul><li>On UNIX platforms, interactive <code>run</code> and <code>exec</code> commands now require
the <code>docker</code> CLI to be installed on the client by default. To revert
to the previous behavior, users may set the <code>COMPOSE_INTERACTIVE_NO_CLI</code>
environment variable.</li></ul><h3 class=scroll-mt-20 id=new-features-5><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-5">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-3x><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-3x">Compose file version 3.x</a></h4><ul><li>The output of the <code>config</code> command should now merge <code>deploy</code> options from
several Compose files in a more accurate manner</li></ul><h4 class=scroll-mt-20 id=compose-file-version-23-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-23-1">Compose file version 2.3</a></h4><ul><li>Added support for the <code>runtime</code> option in service definitions</li></ul><h4 class=scroll-mt-20 id=compose-file-version-21-and-up-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-21-and-up-1">Compose file version 2.1 and up</a></h4><ul><li>Added support for the <code>${VAR:?err}</code> and <code>${VAR?err}</code> variable interpolation
syntax to indicate mandatory variables</li></ul><h4 class=scroll-mt-20 id=compose-file-version-2x><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-2x">Compose file version 2.x</a></h4><ul><li>Added <code>priority</code> key to service network mappings, allowing the user to
define in which order the specified service will connect to each network</li></ul><h4 class=scroll-mt-20 id=all-formats-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#all-formats-2">All formats</a></h4><ul><li><p>Added <code>--renew-anon-volumes</code> (shorthand <code>-V</code>) to the <code>up</code> command,
preventing Compose from recovering volume data from previous containers for
anonymous volumes</p></li><li><p>Added limit for number of simultaneous parallel operations, which should
prevent accidental resource exhaustion of the server. Default is 64 and
can be configured using the <code>COMPOSE_PARALLEL_LIMIT</code> environment variable</p></li><li><p>Added <code>--always-recreate-deps</code> flag to the <code>up</code> command to force recreating
dependent services along with the dependency owner</p></li><li><p>Added <code>COMPOSE_IGNORE_ORPHANS</code> environment variable to forgo orphan
container detection and suppress warnings</p></li><li><p>Added <code>COMPOSE_FORCE_WINDOWS_HOST</code> environment variable to force Compose
to parse volume definitions as if the Docker host was a Windows system,
even if Compose itself is currently running on UNIX</p></li><li><p>Bash completion should now be able to better differentiate between running,
stopped and paused services</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-26><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-26">Bug fixes</a></h3><ul><li><p>Fixed a bug that would cause the <code>build</code> command to report a connection
error when the build context contained unreadable files or FIFO objects.
These file types will now be handled appropriately</p></li><li><p>Fixed various issues around interactive <code>run</code>/<code>exec</code> sessions.</p></li><li><p>Fixed a bug where setting TLS options with environment and CLI flags
simultaneously would result in part of the configuration being ignored</p></li><li><p>Fixed a bug where the DOCKER_TLS_VERIFY environment variable was being
ignored by Compose</p></li><li><p>Fixed a bug where the <code>-d</code> and <code>--timeout</code> flags in <code>up</code> were erroneously
marked as incompatible</p></li><li><p>Fixed a bug where the recreation of a service would break if the image
associated with the previous container had been removed</p></li><li><p>Fixed a bug where updating a mount's target would break Compose when
trying to recreate the associated service</p></li><li><p>Fixed a bug where <code>tmpfs</code> volumes declared using the extended syntax in
Compose files using version 3.2 would be erroneously created as anonymous
volumes instead</p></li><li><p>Fixed a bug where type conversion errors would print a stacktrace instead
of exiting gracefully</p></li><li><p>Fixed some errors related to unicode handling</p></li><li><p>Dependent services no longer get recreated along with the dependency owner
if their configuration hasn't changed</p></li><li><p>Added better validation of <code>labels</code> fields in Compose files. Label values
containing scalar types (number, boolean) now get automatically converted
to strings</p></li></ul><h2 class=scroll-mt-20 id=1180><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1180">1.18.0</a></h2><p>(2017-12-18)</p><h3 class=scroll-mt-20 id=new-features-6><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-6">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-35><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-35">Compose file version 3.5</a></h4><ul><li><p>Introduced version 3.5 of the <code>docker-compose.yml</code> specification.
This version requires Docker Engine 17.06.0 or above</p></li><li><p>Added support for the <code>shm_size</code> parameter in build configurations</p></li><li><p>Added support for the <code>isolation</code> parameter in service definitions</p></li><li><p>Added support for custom names for network, secret and config definitions</p></li></ul><h4 class=scroll-mt-20 id=compose-file-version-23-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-23-2">Compose file version 2.3</a></h4><ul><li><p>Added support for <code>extra_hosts</code> in build configuration</p></li><li><p>Added support for the
<a class=link href="compose-file/compose-file-v3/index.html#long-syntax-3">long syntax</a> for volume entries, as previously introduced in the 3.2 format.
Using this syntax will create
<a class=link href="../storage/bind-mounts/index.html">mounts</a> instead of volumes.</p></li></ul><h4 class=scroll-mt-20 id=compose-file-version-21-and-up-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-21-and-up-2">Compose file version 2.1 and up</a></h4><ul><li><p>Added support for the <code>oom_kill_disable</code> parameter in service definitions
(2.x only)</p></li><li><p>Added support for custom names for network definitions (2.x only)</p></li></ul><h4 class=scroll-mt-20 id=all-formats-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#all-formats-3">All formats</a></h4><ul><li><p>Values interpolated from the environment will now be converted to the
proper type when used in non-string fields.</p></li><li><p>Added support for <code>--label</code> in <code>docker-compose run</code></p></li><li><p>Added support for <code>--timeout</code> in <code>docker-compose down</code></p></li><li><p>Added support for <code>--memory</code> in <code>docker-compose build</code></p></li><li><p>Setting <code>stop_grace_period</code> in service definitions now also sets the
container's <code>stop_timeout</code></p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-27><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-27">Bug fixes</a></h3><ul><li><p>Fixed an issue where Compose was still handling service hostname according
to legacy engine behavior, causing hostnames containing dots to be cut up</p></li><li><p>Fixed a bug where the <code>X-Y:Z</code> syntax for ports was considered invalid
by Compose</p></li><li><p>Fixed an issue with CLI logging causing duplicate messages and inelegant
output to occur</p></li><li><p>Fixed an issue that caused <code>stop_grace_period</code> to be ignored when using
multiple Compose files</p></li><li><p>Fixed a bug that caused <code>docker-compose images</code> to crash when using
untagged images</p></li><li><p>Fixed a bug where the valid <code>${VAR:-}</code> syntax would cause Compose to
error out</p></li><li><p>Fixed a bug where <code>env_file</code> entries using an UTF-8 BOM were being read
incorrectly</p></li><li><p>Fixed a bug where missing secret files would generate an empty directory
in their place</p></li><li><p>Fixed character encoding issues in the CLI's error handlers</p></li><li><p>Added validation for the <code>test</code> field in healthchecks</p></li><li><p>Added validation for the <code>subnet</code> field in IPAM configurations</p></li><li><p>Added validation for <code>volumes</code> properties when using the long syntax in
service definitions</p></li><li><p>The CLI now explicit prevents using <code>-d</code> and <code>--timeout</code> together
in <code>docker-compose up</code></p></li></ul><h2 class=scroll-mt-20 id=1170><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1170">1.17.0</a></h2><p>(2017-11-01)</p><h3 class=scroll-mt-20 id=new-features-7><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-7">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-34><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-34">Compose file version 3.4</a></h4><ul><li><p>Introduced version 3.4 of the <code>docker-compose.yml</code> specification.
This version requires to be used with Docker Engine 17.06.0 or above.</p></li><li><p>Added support for <code>cache_from</code>, <code>network</code> and <code>target</code> options in build
configurations</p></li><li><p>Added support for the <code>order</code> parameter in the <code>update_config</code> section</p></li><li><p>Added support for setting a custom name in volume definitions using
the <code>name</code> parameter</p></li></ul><h4 class=scroll-mt-20 id=compose-file-version-23-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-23-3">Compose file version 2.3</a></h4><ul><li>Added support for <code>shm_size</code> option in build configuration</li></ul><h4 class=scroll-mt-20 id=compose-file-version-2x-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-2x-1">Compose file version 2.x</a></h4><ul><li>Added support for extension fields (<code>x-*</code>). Also available for v3.4 files</li></ul><h4 class=scroll-mt-20 id=all-formats-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#all-formats-4">All formats</a></h4><ul><li>Added new <code>--no-start</code> to the <code>up</code> command, allowing users to create all
resources (networks, volumes, containers) without starting services.
The <code>create</code> command is deprecated in favor of this new option</li></ul><h3 class=scroll-mt-20 id=bug-fixes-28><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-28">Bug fixes</a></h3><ul><li><p>Fixed a bug where <code>extra_hosts</code> values would be overridden by extension
files instead of merging together</p></li><li><p>Fixed a bug where the validation for v3.2 files would prevent using the
<code>consistency</code> field in service volume definitions</p></li><li><p>Fixed a bug that would cause a crash when configuration fields expecting
unique items would contain duplicates</p></li><li><p>Fixed a bug where mount overrides with a different mode would create a
duplicate entry instead of overriding the original entry</p></li><li><p>Fixed a bug where build labels declared as a list wouldn't be properly
parsed</p></li><li><p>Fixed a bug where the output of <code>docker-compose config</code> would be invalid
for some versions if the file contained custom-named external volumes</p></li><li><p>Improved error handling when issuing a build command on Windows using an
unsupported file version</p></li><li><p>Fixed an issue where networks with identical names would sometimes be
created when running <code>up</code> commands concurrently.</p></li></ul><h2 class=scroll-mt-20 id=1160><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1160">1.16.0</a></h2><p>(2017-08-31)</p><h3 class=scroll-mt-20 id=new-features-8><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-8">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-23-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-23-4">Compose file version 2.3</a></h4><ul><li><p>Introduced version 2.3 of the <code>docker-compose.yml</code> specification.
This version requires to be used with Docker Engine 17.06.0 or above.</p></li><li><p>Added support for the <code>target</code> parameter in build configurations</p></li><li><p>Added support for the <code>start_period</code> parameter in healthcheck
configurations</p></li></ul><h4 class=scroll-mt-20 id=compose-file-version-2x-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-2x-2">Compose file version 2.x</a></h4><ul><li><p>Added support for the <code>blkio_config</code> parameter in service definitions</p></li><li><p>Added support for setting a custom name in volume definitions using
the <code>name</code> parameter (not available for version 2.0)</p></li></ul><h4 class=scroll-mt-20 id=all-formats-5><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#all-formats-5">All formats</a></h4><ul><li>Added new CLI flag <code>--no-ansi</code> to suppress ANSI control characters in
output</li></ul><h3 class=scroll-mt-20 id=bug-fixes-29><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-29">Bug fixes</a></h3><ul><li><p>Fixed a bug where nested <code>extends</code> instructions weren't resolved
properly, causing "file not found" errors</p></li><li><p>Fixed several issues with <code>.dockerignore</code> parsing</p></li><li><p>Fixed issues where logs of TTY-enabled services were being printed
incorrectly and causing <code>MemoryError</code> exceptions</p></li><li><p>Fixed a bug where printing application logs would sometimes be interrupted
by a <code>UnicodeEncodeError</code> exception on Python 3</p></li><li><p>The <code>$</code> character in the output of <code>docker-compose config</code> is now
properly escaped</p></li><li><p>Fixed a bug where running <code>docker-compose top</code> would sometimes fail
with an uncaught exception</p></li><li><p>Fixed a bug where <code>docker-compose pull</code> with the <code>--parallel</code> flag
would return a <code>0</code> exit code when failing</p></li><li><p>Fixed an issue where keys in <code>deploy.resources</code> were not being validated</p></li><li><p>Fixed an issue where the <code>logging</code> options in the output of
<code>docker-compose config</code> would be set to <code>null</code>, an invalid value</p></li><li><p>Fixed the output of the <code>docker-compose images</code> command when an image
would come from a private repository using an explicit port number</p></li><li><p>Fixed the output of <code>docker-compose config</code> when a port definition used
<code>0</code> as the value for the published port</p></li></ul><h2 class=scroll-mt-20 id=1150><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1150">1.15.0</a></h2><p>(2017-07-26)</p><h3 class=scroll-mt-20 id=new-features-9><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-9">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-22><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-22">Compose file version 2.2</a></h4><ul><li>Added support for the <code>network</code> parameter in build configurations.</li></ul><h4 class=scroll-mt-20 id=compose-file-version-21-and-up-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-21-and-up-3">Compose file version 2.1 and up</a></h4><ul><li><p>The <code>pid</code> option in a service's definition now supports a <code>service:&lt;name></code>
value.</p></li><li><p>Added support for the <code>storage_opt</code> parameter in in service definitions.
This option is not available for the v3 format</p></li></ul><h4 class=scroll-mt-20 id=all-formats-6><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#all-formats-6">All formats</a></h4><ul><li><p>Added <code>--quiet</code> flag to <code>docker-compose pull</code>, suppressing progress output</p></li><li><p>Some improvements to CLI output</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-30><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-30">Bug fixes</a></h3><ul><li><p>Volumes specified through the <code>--volume</code> flag of <code>docker-compose run</code> now
complement volumes declared in the service's definition instead of replacing
them</p></li><li><p>Fixed a bug where using multiple Compose files would unset the scale value
defined inside the Compose file.</p></li><li><p>Fixed an issue where the <code>credHelpers</code> entries in the <code>config.json</code> file
were not being honored by Compose</p></li><li><p>Fixed a bug where using multiple Compose files with port declarations
would cause failures in Python 3 environments</p></li><li><p>Fixed a bug where some proxy-related options present in the user's
environment would prevent Compose from running</p></li><li><p>Fixed an issue where the output of <code>docker-compose config</code> would be invalid
if the original file used <code>Y</code> or <code>N</code> values</p></li><li><p>Fixed an issue preventing <code>up</code> operations on a previously created stack on
Windows Engine.</p></li></ul><h2 class=scroll-mt-20 id=1140><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1140">1.14.0</a></h2><p>(2017-06-19)</p><h3 class=scroll-mt-20 id=new-features-10><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-10">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-33><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-33">Compose file version 3.3</a></h4><ul><li>Introduced version 3.3 of the <code>docker-compose.yml</code> specification.
This version requires to be used with Docker Engine 17.06.0 or above.
Note: the <code>credential_spec</code> and <code>configs</code> keys only apply to Swarm services
and will be ignored by Compose</li></ul><h4 class=scroll-mt-20 id=compose-file-version-22-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-22-1">Compose file version 2.2</a></h4><ul><li>Added the following parameters in service definitions: <code>cpu_count</code>,
<code>cpu_percent</code>, <code>cpus</code></li></ul><h4 class=scroll-mt-20 id=compose-file-version-21><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-21">Compose file version 2.1</a></h4><ul><li>Added support for build labels. This feature is also available in the
2.2 and 3.3 formats.</li></ul><h4 class=scroll-mt-20 id=all-formats-7><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#all-formats-7">All formats</a></h4><ul><li><p>Added shorthand <code>-u</code> for <code>--user</code> flag in <code>docker-compose exec</code></p></li><li><p>Differences in labels between the Compose file and remote network
will now print a warning instead of preventing redeployment.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-31><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-31">Bug fixes</a></h3><ul><li><p>Fixed a bug where service's dependencies were being rescaled to their
default scale when running a <code>docker-compose run</code> command</p></li><li><p>Fixed a bug where <code>docker-compose rm</code> with the <code>--stop</code> flag was not
behaving properly when provided with a list of services to remove</p></li><li><p>Fixed a bug where <code>cache_from</code> in the build section would be ignored when
using more than one Compose file.</p></li><li><p>Fixed a bug that prevented binding the same port to different IPs when
using more than one Compose file.</p></li><li><p>Fixed a bug where override files would not be picked up by Compose if they
had the <code>.yaml</code> extension</p></li><li><p>Fixed a bug on Windows Engine where networks would be incorrectly flagged
for recreation</p></li><li><p>Fixed a bug where services declaring ports would cause crashes on some
versions of Python 3</p></li><li><p>Fixed a bug where the output of <code>docker-compose config</code> would sometimes
contain invalid port definitions</p></li></ul><h2 class=scroll-mt-20 id=1130><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1130">1.13.0</a></h2><p>(2017-05-02)</p><h3 class=scroll-mt-20 id=breaking-changes-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#breaking-changes-1">Breaking changes</a></h3><ul><li><code>docker-compose up</code> now resets a service's scaling to its default value.
You can use the newly introduced <code>--scale</code> option to specify a custom
scale value</li></ul><h3 class=scroll-mt-20 id=new-features-11><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-11">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-22-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-22-2">Compose file version 2.2</a></h4><ul><li><p>Introduced version 2.2 of the <code>docker-compose.yml</code> specification. This
version requires to be used with Docker Engine 1.13.0 or above</p></li><li><p>Added support for <code>init</code> in service definitions.</p></li><li><p>Added support for <code>scale</code> in service definitions. The configuration's value
can be overridden using the <code>--scale</code> flag in <code>docker-compose up</code>.
The <code>scale</code> command is disabled for this file format</p></li></ul><h4 class=scroll-mt-20 id=compose-file-version-2x-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-2x-3">Compose file version 2.x</a></h4><ul><li>Added support for <code>options</code> in the <code>ipam</code> section of network definitions</li></ul><h3 class=scroll-mt-20 id=bug-fixes-32><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-32">Bug fixes</a></h3><ul><li><p>Fixed a bug where paths provided to compose via the <code>-f</code> option were not
being resolved properly</p></li><li><p>Fixed a bug where the <code>ext_ip::target_port</code> notation in the ports section
was incorrectly marked as invalid</p></li><li><p>Fixed an issue where the <code>exec</code> command would sometimes not return control
to the terminal when using the <code>-d</code> flag</p></li><li><p>Fixed a bug where secrets were missing from the output of the <code>config</code>
command for v3.2 files</p></li><li><p>Fixed an issue where <code>docker-compose</code> would hang if no internet connection
was available</p></li><li><p>Fixed an issue where paths containing unicode characters passed via the <code>-f</code>
flag were causing Compose to crash</p></li><li><p>Fixed an issue where the output of <code>docker-compose config</code> would be invalid
if the Compose file contained external secrets</p></li><li><p>Fixed a bug where using <code>--exit-code-from</code> with <code>up</code> would fail if Compose
was installed in a Python 3 environment</p></li><li><p>Fixed a bug where recreating containers using a combination of <code>tmpfs</code> and
<code>volumes</code> would result in an invalid config state</p></li></ul><h2 class=scroll-mt-20 id=1120><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1120">1.12.0</a></h2><p>(2017-04-04)</p><h3 class=scroll-mt-20 id=new-features-12><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-12">New features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-32><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-32">Compose file version 3.2</a></h4><ul><li><p>Introduced version 3.2 of the <code>docker-compose.yml</code> specification</p></li><li><p>Added support for <code>cache_from</code> in the <code>build</code> section of services</p></li><li><p>Added support for the new expanded ports syntax in service definitions</p></li><li><p>Added support for the new expanded volumes syntax in service definitions</p></li></ul><h4 class=scroll-mt-20 id=compose-file-version-21-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-21-1">Compose file version 2.1</a></h4><ul><li>Added support for <code>pids_limit</code> in service definitions</li></ul><h4 class=scroll-mt-20 id=compose-file-version-20-and-up><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-20-and-up">Compose file version 2.0 and up</a></h4><ul><li><p>Added <code>--volumes</code> option to <code>docker-compose config</code> that lists named
volumes declared for that project</p></li><li><p>Added support for <code>mem_reservation</code> in service definitions (2.x only)</p></li><li><p>Added support for <code>dns_opt</code> in service definitions (2.x only)</p></li></ul><h4 class=scroll-mt-20 id=all-formats-8><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#all-formats-8">All formats</a></h4><ul><li><p>Added a new <code>docker-compose images</code> command that lists images used by
the current project's containers</p></li><li><p>Added a <code>--stop</code> (shorthand <code>-s</code>) option to <code>docker-compose rm</code> that stops
the running containers before removing them</p></li><li><p>Added a <code>--resolve-image-digests</code> option to <code>docker-compose config</code> that
pins the image version for each service to a permanent digest</p></li><li><p>Added a <code>--exit-code-from SERVICE</code> option to <code>docker-compose up</code>. When
used, <code>docker-compose</code> will exit on any container's exit with the code
corresponding to the specified service's exit code</p></li><li><p>Added a <code>--parallel</code> option to <code>docker-compose pull</code> that enables images
for multiple services to be pulled simultaneously</p></li><li><p>Added a <code>--build-arg</code> option to <code>docker-compose build</code></p></li><li><p>Added a <code>--volume &lt;volume_mapping></code> (shorthand <code>-v</code>) option to
<code>docker-compose run</code> to declare runtime volumes to be mounted</p></li><li><p>Added a <code>--project-directory PATH</code> option to <code>docker-compose</code> that will
affect path resolution for the project</p></li><li><p>When using <code>--abort-on-container-exit</code> in <code>docker-compose up</code>, the exit
code for the container that caused the abort will be the exit code of
the <code>docker-compose up</code> command</p></li><li><p>Users can now configure which path separator character they want to use
to separate the <code>COMPOSE_FILE</code> environment value using the
<code>COMPOSE_PATH_SEPARATOR</code> environment variable</p></li><li><p>Added support for port range to a single port in port mappings, such as
<code>8000-8010:80</code>.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-33><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-33">Bug fixes</a></h3><ul><li><p><code>docker-compose run --rm</code> now removes anonymous volumes after execution,
matching the behavior of <code>docker run --rm</code>.</p></li><li><p>Fixed a bug where override files containing port lists would cause a
TypeError to be raised</p></li><li><p>Fixed a bug where the <code>deploy</code> key would be missing from the output of
<code>docker-compose config</code></p></li><li><p>Fixed a bug where scaling services up or down would sometimes re-use
obsolete containers</p></li><li><p>Fixed a bug where the output of <code>docker-compose config</code> would be invalid
if the project declared anonymous volumes</p></li><li><p>Variable interpolation now properly occurs in the <code>secrets</code> section of
the Compose file</p></li><li><p>The <code>secrets</code> section now properly appears in the output of
<code>docker-compose config</code></p></li><li><p>Fixed a bug where changes to some networks properties would not be
detected against previously created networks</p></li><li><p>Fixed a bug where <code>docker-compose</code> would crash when trying to write into
a closed pipe</p></li><li><p>Fixed an issue where Compose would not pick up on the value of
COMPOSE_TLS_VERSION when used in combination with command-line TLS flags</p></li></ul><h2 class=scroll-mt-20 id=1112><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1112">1.11.2</a></h2><p>(2017-02-17)</p><h3 class=scroll-mt-20 id=bug-fixes-34><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-34">Bug fixes</a></h3><ul><li><p>Fixed a bug that was preventing secrets configuration from being
loaded properly</p></li><li><p>Fixed a bug where the <code>docker-compose config</code> command would fail
if the config file contained secrets definitions</p></li><li><p>Fixed an issue where Compose on some linux distributions would
pick up and load an outdated version of the requests library</p></li><li><p>Fixed an issue where socket-type files inside a build folder
would cause <code>docker-compose</code> to crash when trying to build that
service</p></li><li><p>Fixed an issue where recursive wildcard patterns <code>**</code> were not being
recognized in <code>.dockerignore</code> files.</p></li></ul><h2 class=scroll-mt-20 id=1111><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1111">1.11.1</a></h2><p>(2017-02-09)</p><h3 class=scroll-mt-20 id=bug-fixes-35><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-35">Bug fixes</a></h3><ul><li>Fixed a bug where the 3.1 file format was not being recognized as valid
by the Compose parser</li></ul><h2 class=scroll-mt-20 id=1110><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1110">1.11.0</a></h2><p>(2017-02-08)</p><h3 class=scroll-mt-20 id=new-features-13><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-13">New Features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-31><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-31">Compose file version 3.1</a></h4><ul><li>Introduced version 3.1 of the <code>docker-compose.yml</code> specification. This
version requires Docker Engine 1.13.0 or above. It introduces support
for secrets. See the documentation for more information</li></ul><h4 class=scroll-mt-20 id=compose-file-version-20-and-up-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-20-and-up-1">Compose file version 2.0 and up</a></h4><ul><li>Introduced the <code>docker-compose top</code> command that displays processes running
for the different services managed by Compose.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-36><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-36">Bug fixes</a></h3><ul><li><p>Fixed a bug where extending a service defining a healthcheck dictionary
would cause <code>docker-compose</code> to error out.</p></li><li><p>Fixed an issue where the <code>pid</code> entry in a service definition was being
ignored when using multiple Compose files.</p></li></ul><h2 class=scroll-mt-20 id=1101><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1101">1.10.1</a></h2><p>(2017-02-01)</p><h3 class=scroll-mt-20 id=bug-fixes-37><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-37">Bug fixes</a></h3><ul><li><p>Fixed an issue where the presence of older versions of the docker-py
package would cause unexpected crashes while running Compose</p></li><li><p>Fixed an issue where healthcheck dependencies would be lost when
using multiple compose files for a project</p></li><li><p>Fixed a few issues that made the output of the <code>config</code> command
invalid</p></li><li><p>Fixed an issue where adding volume labels to v3 Compose files would
result in an error</p></li><li><p>Fixed an issue on Windows where build context paths containing unicode
characters were being improperly encoded</p></li><li><p>Fixed a bug where Compose would occasionally crash while streaming logs
when containers would stop or restart</p></li></ul><h2 class=scroll-mt-20 id=1100><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#1100">1.10.0</a></h2><p>(2017-01-18)</p><h3 class=scroll-mt-20 id=new-features-14><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-14">New Features</a></h3><h4 class=scroll-mt-20 id=compose-file-version-30><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-30">Compose file version 3.0</a></h4><ul><li>Introduced version 3.0 of the <code>docker-compose.yml</code> specification. This
version requires to be used with Docker Engine 1.13 or above and is
specifically designed to work with the <code>docker stack</code> commands.</li></ul><h4 class=scroll-mt-20 id=compose-file-version-21-and-up-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-21-and-up-4">Compose file version 2.1 and up</a></h4><ul><li><p>Healthcheck configuration can now be done in the service definition using
the <code>healthcheck</code> parameter</p></li><li><p>Containers dependencies can now be set up to wait on positive healthchecks
when declared using <code>depends_on</code>. See the documentation for the updated
syntax.
<strong>Note</strong>: This feature will not be ported to version 3 Compose files.</p></li><li><p>Added support for the <code>sysctls</code> parameter in service definitions</p></li><li><p>Added support for the <code>userns_mode</code> parameter in service definitions</p></li><li><p>Compose now adds identifying labels to networks and volumes it creates</p></li></ul><h4 class=scroll-mt-20 id=compose-file-version-20-and-up-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#compose-file-version-20-and-up-2">Compose file version 2.0 and up</a></h4><ul><li>Added support for the <code>stop_grace_period</code> option in service definitions.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-38><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-38">Bug fixes</a></h3><ul><li><p>Colored output now works properly on Windows.</p></li><li><p>Fixed a bug where docker-compose run would fail to set up link aliases
in interactive mode on Windows.</p></li><li><p>Networks created by Compose are now always made attachable
(Compose files v2.1 and up).</p></li><li><p>Fixed a bug where falsy values of <code>COMPOSE_CONVERT_WINDOWS_PATHS</code>
(<code>0</code>, <code>false</code>, empty value) were being interpreted as true.</p></li><li><p>Fixed a bug where forward slashes in some .dockerignore patterns weren't
being parsed correctly on Windows</p></li></ul><h2 class=scroll-mt-20 id=190><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#190">1.9.0</a></h2><p>(2016-11-16)</p><p><strong>Breaking changes</strong></p><ul><li>When using Compose with Docker Toolbox/Machine on Windows, volume paths are
no longer converted from <code>C:\Users</code> to <code>/c/Users</code>-style by default. To
re-enable this conversion so that your volumes keep working, set the
environment variable <code>COMPOSE_CONVERT_WINDOWS_PATHS=1</code>. Users of
Docker for Windows are not affected and do not need to set the variable.</li></ul><h3 class=scroll-mt-20 id=new-features-15><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-15">New Features</a></h3><ul><li><p>Interactive mode for <code>docker-compose run</code> and <code>docker-compose exec</code> is
now supported on Windows platforms. The <code>docker</code> binary
is required to be present on the system for this feature to work.</p></li><li><p>Introduced version 2.1 of the <code>docker-compose.yml</code> specification. This
version requires to be used with Docker Engine 1.12 or above.</p><ul><li>Added support for setting volume labels and network labels in
<code>docker-compose.yml</code>.</li><li>Added support for the <code>isolation</code> parameter in service definitions.</li><li>Added support for link-local IPs in the service networks definitions.</li><li>Added support for shell-style inline defaults in variable interpolation.
The supported forms are <code>${FOO-default}</code> (fall back if FOO is unset) and
<code>${FOO:-default}</code> (fall back if FOO is unset or empty).</li></ul></li><li><p>Added support for the <code>group_add</code> and <code>oom_score_adj</code> parameters in
service definitions.</p></li><li><p>Added support for the <code>internal</code> and <code>enable_ipv6</code> parameters in network
definitions.</p></li><li><p>Compose now defaults to using the <code>npipe</code> protocol on Windows.</p></li><li><p>Overriding a <code>logging</code> configuration will now properly merge the <code>options</code>
mappings if the <code>driver</code> values do not conflict.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-39><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-39">Bug fixes</a></h3><ul><li><p>Fixed several bugs related to <code>npipe</code> protocol support on Windows.</p></li><li><p>Fixed an issue with Windows paths being incorrectly converted when
using Docker on Windows Server.</p></li><li><p>Fixed a bug where an empty <code>restart</code> value would sometimes result in an
exception being raised.</p></li><li><p>Fixed an issue where service logs containing unicode characters would
sometimes cause an error to occur.</p></li><li><p>Fixed a bug where unicode values in environment variables would sometimes
raise a unicode exception when retrieved.</p></li><li><p>Fixed an issue where Compose would incorrectly detect a configuration
mismatch for overlay networks.</p></li></ul><h2 class=scroll-mt-20 id=181><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#181">1.8.1</a></h2><p>(2016-09-22)</p><h3 class=scroll-mt-20 id=bug-fixes-40><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-40">Bug fixes</a></h3><ul><li><p>Fixed a bug where users using a credentials store were not able
to access their private images.</p></li><li><p>Fixed a bug where users using identity tokens to authenticate
were not able to access their private images.</p></li><li><p>Fixed a bug where an <code>HttpHeaders</code> entry in the docker configuration
file would cause Compose to crash when trying to build an image.</p></li><li><p>Fixed a few bugs related to the handling of Windows paths in volume
binding declarations.</p></li><li><p>Fixed a bug where Compose would sometimes crash while trying to
read a streaming response from the engine.</p></li><li><p>Fixed an issue where Compose would crash when encountering an API error
while streaming container logs.</p></li><li><p>Fixed an issue where Compose would erroneously try to output logs from
drivers not handled by the Engine's API.</p></li><li><p>Fixed a bug where options from the <code>docker-machine config</code> command would
not be properly interpreted by Compose.</p></li><li><p>Fixed a bug where the connection to the Docker Engine would
sometimes fail when running a large number of services simultaneously.</p></li><li><p>Fixed an issue where Compose would sometimes print a misleading
suggestion message when running the <code>bundle</code> command.</p></li><li><p>Fixed a bug where connection errors would not be handled properly by
Compose during the project initialization phase.</p></li><li><p>Fixed a bug where a misleading error would appear when encountering
a connection timeout.</p></li></ul><h2 class=scroll-mt-20 id=180><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#180">1.8.0</a></h2><p>(2016-06-14)</p><h3 class=scroll-mt-20 id=breaking-changes-2><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#breaking-changes-2">Breaking Changes</a></h3><ul><li><p>As announced in 1.7.0, <code>docker-compose rm</code> now removes containers
created by <code>docker-compose run</code> by default.</p></li><li><p>Setting <code>entrypoint</code> on a service now empties out any default
command that was set on the image (i.e. any <code>CMD</code> instruction in the
Dockerfile used to build it). This makes it consistent with
the <code>--entrypoint</code> flag to <code>docker run</code>.</p></li></ul><h3 class=scroll-mt-20 id=new-features-16><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-16">New Features</a></h3><ul><li><p>Added <code>docker-compose bundle</code>, a command that builds a bundle file
to be consumed by the new <em>Docker Stack</em> commands in Docker 1.12.</p></li><li><p>Added <code>docker-compose push</code>, a command that pushes service images
to a registry.</p></li><li><p>Compose now supports specifying a custom TLS version for
interaction with the Docker Engine using the <code>COMPOSE_TLS_VERSION</code>
environment variable.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-41><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-41">Bug fixes</a></h3><ul><li><p>Fixed a bug where Compose would erroneously try to read <code>.env</code>
at the project's root when it is a directory.</p></li><li><p><code>docker-compose run -e VAR</code> now passes <code>VAR</code> through from the shell
to the container, as with <code>docker run -e VAR</code>.</p></li><li><p>Improved config merging when multiple compose files are involved
for several service sub-keys.</p></li><li><p>Fixed a bug where volume mappings containing Windows drives would
sometimes be parsed incorrectly.</p></li><li><p>Fixed a bug in Windows environment where volume mappings of the
host's root directory would be parsed incorrectly.</p></li><li><p>Fixed a bug where <code>docker-compose config</code> would output an invalid
Compose file if external networks were specified.</p></li><li><p>Fixed an issue where unset buildargs would be assigned a string
containing <code>'None'</code> instead of the expected empty value.</p></li><li><p>Fixed a bug where yes/no prompts on Windows would not show before
receiving input.</p></li><li><p>Fixed a bug where trying to <code>docker-compose exec</code> on Windows
without the <code>-d</code> option would exit with a stacktrace. This will
still fail for the time being, but should do so gracefully.</p></li><li><p>Fixed a bug where errors during <code>docker-compose up</code> would show
an unrelated stacktrace at the end of the process.</p></li><li><p><code>docker-compose create</code> and <code>docker-compose start</code> show more
descriptive error messages when something goes wrong.</p></li></ul><h2 class=scroll-mt-20 id=171><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#171">1.7.1</a></h2><p>(2016-05-04)</p><h3 class=scroll-mt-20 id=bug-fixes-42><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-42">Bug fixes</a></h3><ul><li><p>Fixed a bug where the output of <code>docker-compose config</code> for v1 files
would be an invalid configuration file.</p></li><li><p>Fixed a bug where <code>docker-compose config</code> would not check the validity
of links.</p></li><li><p>Fixed an issue where <code>docker-compose help</code> would not output a list of
available commands and generic options as expected.</p></li><li><p>Fixed an issue where filtering by service when using <code>docker-compose logs</code>
would not apply for newly created services.</p></li><li><p>Fixed a bug where unchanged services would sometimes be recreated in
in the up phase when using Compose with Python 3.</p></li><li><p>Fixed an issue where API errors encountered during the up phase would
not be recognized as a failure state by Compose.</p></li><li><p>Fixed a bug where Compose would raise a NameError because of an undefined
exception name on non-Windows platforms.</p></li><li><p>Fixed a bug where the wrong version of <code>docker-py</code> would sometimes be
installed alongside Compose.</p></li><li><p>Fixed a bug where the host value output by <code>docker-machine config default</code>
would not be recognized as valid options by the <code>docker-compose</code>
command line.</p></li><li><p>Fixed an issue where Compose would sometimes exit unexpectedly while
reading events broadcasted by a Swarm cluster.</p></li><li><p>Corrected a statement in the docs about the location of the <code>.env</code> file,
which is indeed read from the current directory, instead of in the same
location as the Compose file.</p></li></ul><h2 class=scroll-mt-20 id=170><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#170">1.7.0</a></h2><p>(2016-04-13)</p><h3 class=scroll-mt-20 id=breaking-changes-3><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#breaking-changes-3">Breaking Changes</a></h3><ul><li><p><code>docker-compose logs</code> no longer follows log output by default. It now
matches the behavior of <code>docker logs</code> and exits after the current logs
are printed. Use <code>-f</code> to get the old default behavior.</p></li><li><p>Booleans are no longer allows as values for mappings in the Compose file
(for keys <code>environment</code>, <code>labels</code> and <code>extra_hosts</code>). Previously this
was a warning. Boolean values should be quoted so they become string values.</p></li></ul><h3 class=scroll-mt-20 id=new-features-17><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-17">New Features</a></h3><ul><li><p>Compose now looks for a <code>.env</code> file in the directory where it's run and
reads any environment variables defined inside, if they're not already
set in the shell environment. This lets you easily set defaults for
variables used in the Compose file, or for any of the <code>COMPOSE_*</code> or
<code>DOCKER_*</code> variables.</p></li><li><p>Added a <code>--remove-orphans</code> flag to both <code>docker-compose up</code> and
<code>docker-compose down</code> to remove containers for services that were removed
from the Compose file.</p></li><li><p>Added a <code>--all</code> flag to <code>docker-compose rm</code> to include containers created
by <code>docker-compose run</code>. This will become the default behavior in the next
version of Compose.</p></li><li><p>Added support for all the same TLS configuration flags used by the <code>docker</code>
client: <code>--tls</code>, <code>--tlscert</code>, <code>--tlskey</code>, etc.</p></li><li><p>Compose files now support the <code>tmpfs</code> and <code>shm_size</code> options.</p></li><li><p>Added the <code>--workdir</code> flag to <code>docker-compose run</code></p></li><li><p><code>docker-compose logs</code> now shows logs for new containers that are created
after it starts.</p></li><li><p>The <code>COMPOSE_FILE</code> environment variable can now contain multiple files,
separated by the host system's standard path separator (<code>:</code> on Mac/Linux,
<code>;</code> on Windows).</p></li><li><p>You can now specify a static IP address when connecting a service to a
network with the <code>ipv4_address</code> and <code>ipv6_address</code> options.</p></li><li><p>Added <code>--follow</code>, <code>--timestamp</code>, and <code>--tail</code> flags to the
<code>docker-compose logs</code> command.</p></li><li><p><code>docker-compose up</code>, and <code>docker-compose start</code> will now start containers
in parallel where possible.</p></li><li><p><code>docker-compose stop</code> now stops containers in reverse dependency order
instead of all at once.</p></li><li><p>Added the <code>--build</code> flag to <code>docker-compose up</code> to force it to build a new
image. It now shows a warning if an image is automatically built when the
flag is not used.</p></li><li><p>Added the <code>docker-compose exec</code> command for executing a process in a running
container.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-43><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-43">Bug fixes</a></h3><ul><li><p><code>docker-compose down</code> now removes containers created by
<code>docker-compose run</code>.</p></li><li><p>A more appropriate error is shown when a timeout is hit during <code>up</code> when
using a tty.</p></li><li><p>Fixed a bug in <code>docker-compose down</code> where it would abort if some resources
had already been removed.</p></li><li><p>Fixed a bug where changes to network aliases would not trigger a service
to be recreated.</p></li><li><p>Fix a bug where a log message was printed about creating a new volume
when it already existed.</p></li><li><p>Fixed a bug where interrupting <code>up</code> would not always shut down containers.</p></li><li><p>Fixed a bug where <code>log_opt</code> and <code>log_driver</code> were not properly carried over
when extending services in the v1 Compose file format.</p></li><li><p>Fixed a bug where empty values for build args would cause file validation
to fail.</p></li></ul><h2 class=scroll-mt-20 id=162><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#162">1.6.2</a></h2><p>(2016-02-23)</p><ul><li>Fixed a bug where connecting to a TLS-enabled Docker Engine would fail with
a certificate verification error.</li></ul><h2 class=scroll-mt-20 id=161><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#161">1.6.1</a></h2><p>(2016-02-23)</p><h3 class=scroll-mt-20 id=bug-fixes-44><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-44">Bug fixes</a></h3><ul><li><p>Fixed a bug where recreating a container multiple times would cause the
new container to be started without the previous volumes.</p></li><li><p>Fixed a bug where Compose would set the value of unset environment variables
to an empty string, instead of a key without a value.</p></li><li><p>Provide a better error message when Compose requires a more recent version
of the Docker API.</p></li><li><p>Add a missing config field <code>network.aliases</code> which allows setting a network
scoped alias for a service.</p></li><li><p>Fixed a bug where <code>run</code> would not start services listed in <code>depends_on</code>.</p></li><li><p>Fixed a bug where <code>networks</code> and <code>network_mode</code> where not merged when using
extends or multiple Compose files.</p></li><li><p>Fixed a bug with service aliases where the short container id alias was
only contained 10 characters, instead of the 12 characters used in previous
versions.</p></li><li><p>Added a missing log message when creating a new named volume.</p></li><li><p>Fixed a bug where <code>build.args</code> was not merged when using <code>extends</code> or
multiple Compose files.</p></li><li><p>Fixed some bugs with config validation when null values or incorrect types
were used instead of a mapping.</p></li><li><p>Fixed a bug where a <code>build</code> section without a <code>context</code> would show a stack
trace instead of a helpful validation message.</p></li><li><p>Improved compatibility with swarm by only setting a container affinity to
the previous instance of a services' container when the service uses an
anonymous container volume. Previously the affinity was always set on all
containers.</p></li><li><p>Fixed the validation of some <code>driver_opts</code> would cause an error if a number
was used instead of a string.</p></li><li><p>Some improvements to the <code>run.sh</code> script used by the Compose container install
option.</p></li><li><p>Fixed a bug with <code>up --abort-on-container-exit</code> where Compose would exit,
but would not stop other containers.</p></li><li><p>Corrected the warning message that is printed when a boolean value is used
as a value in a mapping.</p></li></ul><h2 class=scroll-mt-20 id=160><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#160">1.6.0</a></h2><p>(2016-01-15)</p><h3 class=scroll-mt-20 id=major-features><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#major-features">Major Features</a></h3><ul><li><p>Compose 1.6 introduces a new format for <code>docker-compose.yml</code> which lets
you define networks and volumes in the Compose file as well as services. It
also makes a few changes to the structure of some configuration options.</p><p>You don't have to use it - your existing Compose files will run on Compose
1.6 exactly as they do today.</p><p>Check the
<a class=link href="compose-file/compose-versioning/index.html#upgrading">upgrade guide</a>
for full details.</p></li><li><p>Support for networking has exited experimental status and is the recommended
way to enable communication between containers.</p><p>If you use the new file format, your app will use networking. If you aren't
ready yet, just leave your Compose file as it is and it'll continue to work
just the same.</p><p>By default, you don't have to configure any networks. In fact, using
networking with Compose involves even less configuration than using links.
Consult the
<a class=link href="networking/index.html">networking guide</a> for how to use it.</p><p>The experimental flags <code>--x-networking</code> and <code>--x-network-driver</code>, introduced
in Compose 1.5, have been removed.</p></li><li><p>You can now pass arguments to a build if you're using the new file format:</p><pre><code>build:
  context: .
  args:
    buildno: 1
</code></pre></li><li><p>You can now specify both a <code>build</code> and an <code>image</code> key if you're using the
new file format. <code>docker-compose build</code> will build the image and tag it with
the name you've specified, while <code>docker-compose pull</code> will attempt to pull
it.</p></li><li><p>There's a new <code>events</code> command for monitoring container events from
the application, much like <code>docker events</code>. This is a good primitive for
building tools on top of Compose for performing actions when particular
things happen, such as containers starting and stopping.</p></li><li><p>There's a new <code>depends_on</code> option for specifying dependencies between
services. This enforces the order of startup, and ensures that when you run
<code>docker-compose up SERVICE</code> on a service with dependencies, those are started
as well.</p></li></ul><h3 class=scroll-mt-20 id=new-features-18><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-18">New Features</a></h3><ul><li><p>Added a new command <code>config</code> which validates and prints the Compose
configuration after interpolating variables, resolving relative paths, and
merging multiple files and <code>extends</code>.</p></li><li><p>Added a new command <code>create</code> for creating containers without starting them.</p></li><li><p>Added a new command <code>down</code> to stop and remove all the resources created by
<code>up</code> in a single command.</p></li><li><p>Added support for the <code>cpu_quota</code> configuration option.</p></li><li><p>Added support for the <code>stop_signal</code> configuration option.</p></li><li><p>Commands <code>start</code>, <code>restart</code>, <code>pause</code>, and <code>unpause</code> now exit with an
error status code if no containers were modified.</p></li><li><p>Added a new <code>--abort-on-container-exit</code> flag to <code>up</code> which causes <code>up</code> to
stop all container and exit once the first container exits.</p></li><li><p>Removed support for <code>FIG_FILE</code>, <code>FIG_PROJECT_NAME</code>, and no longer reads
<code>fig.yml</code> as a default Compose file location.</p></li><li><p>Removed the <code>migrate-to-labels</code> command.</p></li><li><p>Removed the <code>--allow-insecure-ssl</code> flag.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-45><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-45">Bug fixes</a></h3><ul><li><p>Fixed a validation bug that prevented the use of a range of ports in
the <code>expose</code> field.</p></li><li><p>Fixed a validation bug that prevented the use of arrays in the <code>entrypoint</code>
field if they contained duplicate entries.</p></li><li><p>Fixed a bug that caused <code>ulimits</code> to be ignored when used with <code>extends</code>.</p></li><li><p>Fixed a bug that prevented ipv6 addresses in <code>extra_hosts</code>.</p></li><li><p>Fixed a bug that caused <code>extends</code> to be ignored when included from
multiple Compose files.</p></li><li><p>Fixed an incorrect warning when a container volume was defined in
the Compose file.</p></li><li><p>Fixed a bug that prevented the force shutdown behavior of <code>up</code> and
<code>logs</code>.</p></li><li><p>Fixed a bug that caused <code>None</code> to be printed as the network driver name
when the default network driver was used.</p></li><li><p>Fixed a bug where using the string form of <code>dns</code> or <code>dns_search</code> would
cause an error.</p></li><li><p>Fixed a bug where a container would be reported as "Up" when it was
in the restarting state.</p></li><li><p>Fixed a confusing error message when DOCKER_CERT_PATH was not set properly.</p></li><li><p>Fixed a bug where attaching to a container would fail if it was using a
non-standard logging driver (or none at all).</p></li></ul><h2 class=scroll-mt-20 id=152><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#152">1.5.2</a></h2><p>(2015-12-03)</p><ul><li><p>Fixed a bug which broke the use of <code>environment</code> and <code>env_file</code> with
<code>extends</code>, and caused environment keys without values to have a <code>None</code>
value, instead of a value from the host environment.</p></li><li><p>Fixed a regression in 1.5.1 that caused a warning about volumes to be
raised incorrectly when containers were recreated.</p></li><li><p>Fixed a bug which prevented building a <code>Dockerfile</code> that used <code>ADD &lt;url></code></p></li><li><p>Fixed a bug with <code>docker-compose restart</code> which prevented it from
starting stopped containers.</p></li><li><p>Fixed handling of SIGTERM and SIGINT to properly stop containers</p></li><li><p>Add support for using a url as the value of <code>build</code></p></li><li><p>Improved the validation of the <code>expose</code> option</p></li></ul><h2 class=scroll-mt-20 id=151><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#151">1.5.1</a></h2><p>(2015-11-12)</p><ul><li><p>Add the <code>--force-rm</code> option to <code>build</code>.</p></li><li><p>Add the <code>ulimit</code> option for services in the Compose file.</p></li><li><p>Fixed a bug where <code>up</code> would error with "service needs to be built" if
a service changed from using <code>image</code> to using <code>build</code>.</p></li><li><p>Fixed a bug that would cause incorrect output of parallel operations
on some terminals.</p></li><li><p>Fixed a bug that prevented a container from being recreated when the
mode of a <code>volumes_from</code> was changed.</p></li><li><p>Fixed a regression in 1.5.0 where non-utf-8 unicode characters would cause
<code>up</code> or <code>logs</code> to crash.</p></li><li><p>Fixed a regression in 1.5.0 where Compose would use a success exit status
code when a command fails due to an HTTP timeout communicating with the
docker daemon.</p></li><li><p>Fixed a regression in 1.5.0 where <code>name</code> was being accepted as a valid
service option which would override the actual name of the service.</p></li><li><p>When using <code>--x-networking</code> Compose no longer sets the hostname to the
container name.</p></li><li><p>When using <code>--x-networking</code> Compose will only create the default network
if at least one container is using the network.</p></li><li><p>When printings logs during <code>up</code> or <code>logs</code>, flush the output buffer after
each line to prevent buffering issues from hiding logs.</p></li><li><p>Recreate a container if one of its dependencies is being created.
Previously a container was only recreated if it's dependencies already
existed, but were being recreated as well.</p></li><li><p>Add a warning when a <code>volume</code> in the Compose file is being ignored
and masked by a container volume from a previous container.</p></li><li><p>Improve the output of <code>pull</code> when run without a tty.</p></li><li><p>When using multiple Compose files, validate each before attempting to merge
them together. Previously invalid files would result in not helpful errors.</p></li><li><p>Allow dashes in keys in the <code>environment</code> service option.</p></li><li><p>Improve validation error messages by including the filename as part of the
error message.</p></li></ul><h2 class=scroll-mt-20 id=150><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#150">1.5.0</a></h2><p>(2015-11-03)</p><h3 class=scroll-mt-20 id=breaking-changes-4><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#breaking-changes-4">Breaking changes</a></h3><p>With the introduction of variable substitution support in the Compose file, any
Compose file that uses an environment variable (<code>$VAR</code> or <code>${VAR}</code>) in the <code>command:</code>
or <code>entrypoint:</code> field will break.</p><p>Previously these values were interpolated inside the container, with a value
from the container environment. In Compose 1.5.0, the values will be
interpolated on the host, with a value from the host environment.</p><p>To migrate a Compose file to 1.5.0, escape the variables with an extra <code>$</code>
(ex: <code>$$VAR</code> or <code>$${VAR}</code>). See
<a class=link href=https://github.com/docker/compose/blob/8cc8e61/docs/compose-file.md#variable-substitution target=_blank rel=noopener>https://github.com/docker/compose/blob/8cc8e61/docs/compose-file.md#variable-substitution<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></p><h3 class=scroll-mt-20 id=major-features-1><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#major-features-1">Major features</a></h3><ul><li><p>Compose is now available for Windows.</p></li><li><p>Environment variables can be used in the Compose file. See
<a class=link href=https://github.com/docker/compose/blob/8cc8e61/docs/compose-file.md#variable-substitution target=_blank rel=noopener>https://github.com/docker/compose/blob/8cc8e61/docs/compose-file.md#variable-substitution<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></p></li><li><p>Multiple compose files can be specified, allowing you to override
settings in the default Compose file. See
<a class=link href=https://github.com/docker/compose/blob/8cc8e61/docs/reference/docker-compose.md target=_blank rel=noopener>https://github.com/docker/compose/blob/8cc8e61/docs/reference/docker-compose.md<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>
for more details.</p></li><li><p>Compose now produces better error messages when a file contains
invalid configuration.</p></li><li><p><code>up</code> now waits for all services to exit before shutting down,
rather than shutting down as soon as one container exits.</p></li><li><p>Experimental support for the new docker networking system can be
enabled with the <code>--x-networking</code> flag. Read more here:
<a class=link href=https://github.com/docker/docker/blob/8fee1c20/docs/userguide/dockernetworks.md target=_blank rel=noopener>https://github.com/docker/docker/blob/8fee1c20/docs/userguide/dockernetworks.md<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></p></li></ul><h3 class=scroll-mt-20 id=new-features-19><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-19">New features</a></h3><ul><li><p>You can now optionally pass a mode to <code>volumes_from</code>. For example,
<code>volumes_from: ["servicename:ro"]</code>.</p></li><li><p>Since Docker now lets you create volumes with names, you can refer to those
volumes by name in <code>docker-compose.yml</code>. For example,
<code>volumes: ["mydatavolume:/data"]</code> will mount the volume named
<code>mydatavolume</code> at the path <code>/data</code> inside the container.</p><p>If the first component of an entry in <code>volumes</code> starts with a <code>.</code>, <code>/</code> or <code>~</code>,
it is treated as a path and expansion of relative paths is performed as
necessary. Otherwise, it is treated as a volume name and passed straight
through to Docker.</p><p>Read more on named volumes and volume drivers here:
<a class=link href=https://github.com/docker/docker/blob/244d9c33/docs/userguide/dockervolumes.md target=_blank rel=noopener>https://github.com/docker/docker/blob/244d9c33/docs/userguide/dockervolumes.md<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></p></li><li><p><code>docker-compose build --pull</code> instructs Compose to pull the base image for
each Dockerfile before building.</p></li><li><p><code>docker-compose pull --ignore-pull-failures</code> instructs Compose to continue
if it fails to pull a single service's image, rather than aborting.</p></li><li><p>You can now specify an IPC namespace in <code>docker-compose.yml</code> with the <code>ipc</code>
option.</p></li><li><p>Containers created by <code>docker-compose run</code> can now be named with the
<code>--name</code> flag.</p></li><li><p>If you install Compose with pip or use it as a library, it now works with
Python 3.</p></li><li><p><code>image</code> now supports image digests (in addition to ids and tags). For example,
<code>image: "busybox@sha256:38a203e1986cf79639cfb9b2e1d6e773de84002feea2d4eb006b52004ee8502d"</code></p></li><li><p><code>ports</code> now supports ranges of ports. For example,</p><pre><code>ports:
  - &quot;3000-3005&quot;
  - &quot;9000-9001:8000-8001&quot;
</code></pre></li><li><p><code>docker-compose run</code> now supports a <code>-p|--publish</code> parameter, much like
<code>docker run -p</code>, for publishing specific ports to the host.</p></li><li><p><code>docker-compose pause</code> and <code>docker-compose unpause</code> have been implemented,
analogous to <code>docker pause</code> and <code>docker unpause</code>.</p></li><li><p>When using <code>extends</code> to copy configuration from another service in the same
Compose file, you can omit the <code>file</code> option.</p></li><li><p>Compose can be installed and run as a Docker image. This is an experimental
feature.</p></li></ul><h3 class=scroll-mt-20 id=bug-fixes-46><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-46">Bug fixes</a></h3><ul><li><p>All values for the <code>log_driver</code> option which are supported by the Docker
daemon are now supported by Compose.</p></li><li><p><code>docker-compose build</code> can now be run successfully against a Swarm cluster.</p></li></ul><h2 class=scroll-mt-20 id=142><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#142">1.4.2</a></h2><p>(2015-09-22)</p><ul><li>Fixed a regression in the 1.4.1 release that would cause <code>docker-compose up</code>
without the <code>-d</code> option to exit immediately.</li></ul><h2 class=scroll-mt-20 id=141><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#141">1.4.1</a></h2><p>(2015-09-10)</p><h3 class=scroll-mt-20 id=bug-fixes-47><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-47">Bug fixes</a></h3><ul><li>Some configuration changes (notably changes to <code>links</code>, <code>volumes_from</code>, and
<code>net</code>) were not properly triggering a container recreate as part of
<code>docker-compose up</code>.</li><li><code>docker-compose up &lt;service></code> was showing logs for all services instead of
just the specified services.</li><li>Containers with custom container names were showing up in logs as
<code>service_number</code> instead of their custom container name.</li><li>When scaling a service sometimes containers would be recreated even when
the configuration had not changed.</li></ul><h2 class=scroll-mt-20 id=140><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#140">1.4.0</a></h2><p>(2015-08-04)</p><ul><li><p>By default, <code>docker-compose up</code> now only recreates containers for services whose configuration has changed since they were created. This should result in a dramatic speed-up for many applications.</p><p>The experimental <code>--x-smart-recreate</code> flag which introduced this feature in Compose 1.3.0 has been removed, and a <code>--force-recreate</code> flag has been added for when you want to recreate everything.</p></li><li><p>Several of Compose's commands - <code>scale</code>, <code>stop</code>, <code>kill</code> and <code>rm</code> - now perform actions on multiple containers in parallel, rather than in sequence, which will run much faster on larger applications.</p></li><li><p>You can now specify a custom name for a service's container with <code>container_name</code>. Because Docker container names must be unique, this means you can't scale the service beyond one container.</p></li><li><p>You no longer have to specify a <code>file</code> option when using <code>extends</code> - it will default to the current file.</p></li><li><p>Service names can now contain dots, dashes and underscores.</p></li><li><p>Compose can now read YAML configuration from standard input, rather than from a file, by specifying <code>-</code> as the filename. This makes it easier to generate configuration dynamically:</p><pre><code>$ echo 'redis: {&quot;image&quot;: &quot;redis&quot;}' | docker-compose --file - up
</code></pre></li><li><p>There's a new <code>docker-compose version</code> command which prints extended information about Compose's bundled dependencies.</p></li><li><p><code>docker-compose.yml</code> now supports <code>log_opt</code> as well as <code>log_driver</code>, allowing you to pass extra configuration to a service's logging driver.</p></li><li><p><code>docker-compose.yml</code> now supports <code>memswap_limit</code>, similar to <code>docker run --memory-swap</code>.</p></li><li><p>When mounting volumes with the <code>volumes</code> option, you can now pass in any mode supported by the daemon, not just <code>:ro</code> or <code>:rw</code>. For example, SELinux users can pass <code>:z</code> or <code>:Z</code>.</p></li><li><p>You can now specify a custom volume driver with the <code>volume_driver</code> option in <code>docker-compose.yml</code>, much like <code>docker run --volume-driver</code>.</p></li><li><p>A bug has been fixed where Compose would fail to pull images from private registries serving plain (unsecured) HTTP. The <code>--allow-insecure-ssl</code> flag, which was previously used to work around this issue, has been deprecated and now has no effect.</p></li><li><p>A bug has been fixed where <code>docker-compose build</code> would fail if the build depended on a private Hub image or an image from a private registry.</p></li><li><p>A bug has been fixed where Compose would crash if there were containers which the Docker daemon had not finished removing.</p></li><li><p>Two bugs have been fixed where Compose would sometimes fail with a "Duplicate bind mount" error, or fail to attach volumes to a container, if there was a volume path specified in <code>docker-compose.yml</code> with a trailing slash.</p></li></ul><p>Thanks @mnowster, @dnephin, @ekristen, @funkyfuture, @jeffk and @lukemarsden!</p><h2 class=scroll-mt-20 id=133><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#133">1.3.3</a></h2><p>(2015-07-15)</p><h3 class=scroll-mt-20 id=regression-fixes><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#regression-fixes">Regression fixes</a></h3><ul><li>When stopping containers gracefully, Compose was setting the timeout to 0, effectively forcing a SIGKILL every time.</li><li>Compose would sometimes crash depending on the formatting of container data returned from the Docker API.</li></ul><h2 class=scroll-mt-20 id=132><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#132">1.3.2</a></h2><p>(2015-07-14)</p><h3 class=scroll-mt-20 id=bug-fixes-48><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-48">Bug fixes</a></h3><ul><li>When there were one-off containers created by running <code>docker-compose run</code> on an older version of Compose, <code>docker-compose run</code> would fail with a name collision. Compose now shows an error if you have leftover containers of this type lying around, and tells you how to remove them.</li><li>Compose was not reading Docker authentication config files created in the new location, <code>~/docker/config.json</code>, and authentication against private registries would therefore fail.</li><li>When a container had a pseudo-TTY attached, its output in <code>docker-compose up</code> would be truncated.</li><li><code>docker-compose up --x-smart-recreate</code> would sometimes fail when an image tag was updated.</li><li><code>docker-compose up</code> would sometimes create two containers with the same numeric suffix.</li><li><code>docker-compose rm</code> and <code>docker-compose ps</code> would sometimes list services that aren't part of the current project (though no containers were erroneously removed).</li><li>Some <code>docker-compose</code> commands would not show an error if invalid service names were passed in.</li></ul><p>Thanks @dano, @josephpage, @kevinsimper, @lieryan, @phemmer, @soulrebel and @sschepens!</p><h2 class=scroll-mt-20 id=131><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#131">1.3.1</a></h2><p>(2015-06-21)</p><h3 class=scroll-mt-20 id=bug-fixes-49><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-49">Bug fixes</a></h3><ul><li><code>docker-compose build</code> would always attempt to pull the base image before building.</li><li><code>docker-compose help migrate-to-labels</code> failed with an error.</li><li>If no network mode was specified, Compose would set it to "bridge", rather than allowing the Docker daemon to use its configured default network mode.</li></ul><h2 class=scroll-mt-20 id=130><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#130">1.3.0</a></h2><p>(2015-06-18)</p><h3 class=scroll-mt-20 id=important-notes><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#important-notes">Important notes</a></h3><ul><li><p><strong>This release contains breaking changes, and you will need to either remove or migrate your existing containers before running your app</strong> - see the
<a class=link href=https://github.com/docker/compose/blob/1.3.0rc1/docs/install.md#upgrading target=_blank rel=noopener>upgrading section of the install docs<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a> for details.</p></li><li><p>Compose now requires Docker 1.6.0 or later.</p></li></ul><h3 class=scroll-mt-20 id=improvements><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#improvements">Improvements</a></h3><ul><li><p>Compose now uses container labels, rather than names, to keep track of containers. This makes Compose both faster and easier to integrate with your own tools.</p></li><li><p>Compose no longer uses "intermediate containers" when recreating containers for a service. This makes <code>docker-compose up</code> less complex and more resilient to failure.</p></li></ul><h3 class=scroll-mt-20 id=new-features-20><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#new-features-20">New features</a></h3><ul><li><p><code>docker-compose up</code> has an <strong>experimental</strong> new behavior: it will only recreate containers for services whose configuration has changed in <code>docker-compose.yml</code>. This will eventually become the default, but for now you can take it for a spin:</p><pre><code>  $ docker-compose up --x-smart-recreate
</code></pre></li><li><p>When invoked in a subdirectory of a project, <code>docker-compose</code> will now climb up through parent directories until it finds a <code>docker-compose.yml</code>.</p></li></ul><p>Several new configuration keys have been added to <code>docker-compose.yml</code>:</p><ul><li><code>dockerfile</code>, like <code>docker build --file</code>, lets you specify an alternate Dockerfile to use with <code>build</code>.</li><li><code>labels</code>, like <code>docker run --labels</code>, lets you add custom metadata to containers.</li><li><code>extra_hosts</code>, like <code>docker run --add-host</code>, lets you add entries to a container's <code>/etc/hosts</code> file.</li><li><code>pid: host</code>, like <code>docker run --pid=host</code>, lets you reuse the same PID namespace as the host machine.</li><li><code>cpuset</code>, like <code>docker run --cpuset-cpus</code>, lets you specify which CPUs to allow execution in.</li><li><code>read_only</code>, like <code>docker run --read-only</code>, lets you mount a container's filesystem as read-only.</li><li><code>security_opt</code>, like <code>docker run --security-opt</code>, lets you specify
<a class=link href="../engine/reference/commandline/run/index.html#security-opt">security options</a>.</li><li><code>log_driver</code>, like <code>docker run --log-driver</code>, lets you specify a
<a class=link href="../engine/reference/commandline/run/index.html#log-driver">log driver</a>.</li></ul><h3 class=scroll-mt-20 id=bug-fixes-50><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#bug-fixes-50">Bug fixes</a></h3><ul><li>The output of <code>docker-compose run</code> was sometimes truncated, especially when running under Jenkins.</li><li>A service's volumes would sometimes not update after volume configuration was changed in <code>docker-compose.yml</code>.</li><li>Authenticating against third-party registries would sometimes fail.</li><li><code>docker-compose run --rm</code> would fail to remove the container if the service had a <code>restart</code> policy in place.</li><li><code>docker-compose scale</code> would refuse to scale a service beyond 1 container if it exposed a specific port number on the host.</li><li>Compose would refuse to create multiple volume entries with the same host path.</li></ul><p>Thanks @ahromis, @albers, @aleksandr-vin, @antoineco, @ccverak, @chernjie, @dnephin, @edmorley, @fordhurley, @josephpage, @KyleJamesWalker, @lsowen, @mchasal, @noironetworks, @sdake, @sdurrheimer, @sherter, @stephenlawrence, @thaJeztah, @thieman, @turtlemonvh, @twhiteman, @vdemeester, @xuxinkun and @zwily!</p><h2 class=scroll-mt-20 id=120><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#120">1.2.0</a></h2><p>(2015-04-16)</p><ul><li><p><code>docker-compose.yml</code> now supports an <code>extends</code> option, which enables a service to inherit configuration from another service in another configuration file. This is really good for sharing common configuration between apps, or for configuring the same app for different environments. Here's the
<a class=link href=https://github.com/docker/compose/blob/master/docs/ target=_blank rel=noopener>documentation<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>.</p></li><li><p>When using Compose with a Swarm cluster, containers that depend on one another will be co-scheduled on the same node. This means that most Compose apps will now work out of the box, as long as they don't use <code>build</code>.</p></li><li><p>Repeated invocations of <code>docker-compose up</code> when using Compose with a Swarm cluster now work reliably.</p></li><li><p>Directories passed to <code>build</code>, filenames passed to <code>env_file</code> and volume host paths passed to <code>volumes</code> are now treated as relative to the <em>directory of the configuration file</em>, not the directory that <code>docker-compose</code> is being run in. In the majority of cases, those are the same, but if you use the <code>-f|--file</code> argument to specify a configuration file in another directory, <strong>this is a breaking change</strong>.</p></li><li><p>A service can now share another service's network namespace with <code>net: container:&lt;service></code>.</p></li><li><p><code>volumes_from</code> and <code>net: container:&lt;service></code> entries are taken into account when resolving dependencies, so <code>docker-compose up &lt;service></code> will correctly start all dependencies of <code>&lt;service></code>.</p></li><li><p><code>docker-compose run</code> now accepts a <code>--user</code> argument to specify a user to run the command as, just like <code>docker run</code>.</p></li><li><p>The <code>up</code>, <code>stop</code> and <code>restart</code> commands now accept a <code>--timeout</code> (or <code>-t</code>) argument to specify how long to wait when attempting to gracefully stop containers, just like <code>docker stop</code>.</p></li><li><p><code>docker-compose rm</code> now accepts <code>-f</code> as a shorthand for <code>--force</code>, just like <code>docker rm</code>.</p></li></ul><p>Thanks, @abesto, @albers, @alunduil, @dnephin, @funkyfuture, @gilclark, @IanVS, @KingsleyKelly, @knutwalker, @thaJeztah and @vmalloc!</p><h2 class=scroll-mt-20 id=110><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#110">1.1.0</a></h2><p>(2015-02-25)</p><p>Fig has been renamed to Docker Compose, or just Compose for short. This has several implications for you:</p><ul><li>The command you type is now <code>docker-compose</code>, not <code>fig</code>.</li><li>You should rename your fig.yml to docker-compose.yml.</li><li>If you’re installing via PyPI, the package is now <code>docker-compose</code>, so install it with <code>pip install docker-compose</code>.</li></ul><p>Besides that, there’s a lot of new stuff in this release:</p><ul><li><p>We’ve made a few small changes to ensure that Compose will work with Swarm, Docker’s new clustering tool (
<a class=link href=https://github.com/docker/swarm%29 target=_blank rel=noopener>https://github.com/docker/swarm)<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a>. Eventually you'll be able to point Compose at a Swarm cluster instead of a standalone Docker host and it’ll run your containers on the cluster with no extra work from you. As Swarm is still developing, integration is rough and lots of Compose features don't work yet.</p></li><li><p><code>docker-compose run</code> now has a <code>--service-ports</code> flag for exposing ports on the given service. This is useful for running your webapp with an interactive debugger, for example.</p></li><li><p>You can now link to containers outside your app with the <code>external_links</code> option in docker-compose.yml.</p></li><li><p>You can now prevent <code>docker-compose up</code> from automatically building images with the <code>--no-build</code> option. This will make fewer API calls and run faster.</p></li><li><p>If you don’t specify a tag when using the <code>image</code> key, Compose will default to the <code>latest</code> tag, rather than pulling all tags.</p></li><li><p><code>docker-compose kill</code> now supports the <code>-s</code> flag, allowing you to specify the exact signal you want to send to a service’s containers.</p></li><li><p>docker-compose.yml now has an <code>env_file</code> key, analogous to <code>docker run --env-file</code>, letting you specify multiple environment variables in a separate file. This is great if you have a lot of them, or if you want to keep sensitive information out of version control.</p></li><li><p>docker-compose.yml now supports the <code>dns_search</code>, <code>cap_add</code>, <code>cap_drop</code>, <code>cpu_shares</code> and <code>restart</code> options, analogous to <code>docker run</code>’s <code>--dns-search</code>, <code>--cap-add</code>, <code>--cap-drop</code>, <code>--cpu-shares</code> and <code>--restart</code> options.</p></li><li><p>Compose now ships with Bash tab completion - see the installation and usage docs at
<a class=link href=https://github.com/docker/compose/blob/1.1.0/docs/completion.md target=_blank rel=noopener>https://github.com/docker/compose/blob/1.1.0/docs/completion.md<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></p></li><li><p>A number of bugs have been fixed - see the milestone for details:
<a class=link href="https://github.com/docker/compose/issues?q=milestone%3A1.1.0+" target=_blank rel=noopener>https://github.com/docker/compose/issues?q=milestone%3A1.1.0+<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></p></li></ul><p>Thanks @dnephin, @squebe, @jbalonso, @raulcd, @benlangfield, @albers, @ggtools, @bersace, @dtenenba, @petercv, @drewkett, @TFenby, @paulRbr, @Aigeruth and @salehe!</p><h2 class=scroll-mt-20 id=101><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#101">1.0.1</a></h2><p>(2014-11-04)</p><ul><li>Added an <code>--allow-insecure-ssl</code> option to allow <code>fig up</code>, <code>fig run</code> and <code>fig pull</code> to pull from insecure registries.</li><li>Fixed <code>fig run</code> not showing output in Jenkins.</li><li>Fixed a bug where Fig couldn't build Dockerfiles with ADD statements pointing at URLs.</li></ul><h2 class=scroll-mt-20 id=100><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#100">1.0.0</a></h2><p>(2014-10-16)</p><p>The highlights:</p><ul><li><p><a class=link href=https://www.orchardup.com/blog/orchard-is-joining-docker target=_blank rel=noopener>Fig has joined Docker.<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a> Fig will continue to be maintained, but we'll also be incorporating the best bits of Fig into Docker itself.</p><p>This means the GitHub repository has moved to
<a class=link href=https://github.com/docker/fig target=_blank rel=noopener>https://github.com/docker/fig<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a> and our IRC channel is now #docker-fig on Freenode.</p></li><li><p>Fig can be used with the
<a class=link href="../desktop/install/mac-install/index.html">official Docker OS X installer</a>. Boot2Docker will mount the home directory from your host machine so volumes work as expected.</p></li><li><p>Fig supports Docker 1.3.</p></li><li><p>It is now possible to connect to the Docker daemon using TLS by using the <code>DOCKER_CERT_PATH</code> and <code>DOCKER_TLS_VERIFY</code> environment variables.</p></li><li><p>There is a new <code>fig port</code> command which outputs the host port binding of a service, in a similar way to <code>docker port</code>.</p></li><li><p>There is a new <code>fig pull</code> command which pulls the latest images for a service.</p></li><li><p>There is a new <code>fig restart</code> command which restarts a service's containers.</p></li><li><p>Fig creates multiple containers in service by appending a number to the service name. For example, <code>db_1</code>, <code>db_2</code>. As a convenience, Fig will now give the first container an alias of the service name. For example, <code>db</code>.</p><p>This link alias is also a valid hostname and added to <code>/etc/hosts</code> so you can connect to linked services using their hostname. For example, instead of resolving the environment variables <code>DB_PORT_5432_TCP_ADDR</code> and <code>DB_PORT_5432_TCP_PORT</code>, you could just use the hostname <code>db</code> and port <code>5432</code> directly.</p></li><li><p>Volume definitions now support <code>ro</code> mode, expanding <code>~</code> and expanding environment variables.</p></li><li><p><code>.dockerignore</code> is supported when building.</p></li><li><p>The project name can be set with the <code>FIG_PROJECT_NAME</code> environment variable.</p></li><li><p>The <code>--env</code> and <code>--entrypoint</code> options have been added to <code>fig run</code>.</p></li><li><p>The Fig binary for Linux is now linked against an older version of glibc so it works on CentOS 6 and Debian Wheezy.</p></li></ul><p>Other things:</p><ul><li><code>fig ps</code> now works on Jenkins and makes fewer API calls to the Docker daemon.</li><li><code>--verbose</code> displays more useful debugging output.</li><li>When starting a service where <code>volumes_from</code> points to a service without any containers running, that service will now be started.</li><li>Lots of docs improvements. Notably, environment variables are documented and official repositories are used throughout.</li></ul><p>Thanks @dnephin, @d11wtq, @marksteve, @rubbish, @jbalonso, @timfreund, @alunduil, @mieciu, @shuron, @moss, @suzaku and @chmouel! Whew.</p><h2 class=scroll-mt-20 id=052><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#052">0.5.2</a></h2><p>(2014-07-28)</p><ul><li>Added a <code>--no-cache</code> option to <code>fig build</code>, which bypasses the cache just like <code>docker build --no-cache</code>.</li><li>Fixed the <code>dns:</code> fig.yml option, which was causing fig to error out.</li><li>Fixed a bug where fig couldn't start under Python 2.6.</li><li>Fixed a log-streaming bug that occasionally caused fig to exit.</li></ul><p>Thanks @dnephin and @marksteve!</p><h2 class=scroll-mt-20 id=051><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#051">0.5.1</a></h2><p>(2014-07-11)</p><ul><li>If a service has a command defined, <code>fig run [service]</code> with no further arguments will run it.</li><li>The project name now defaults to the directory containing fig.yml, not the current working directory (if they're different)</li><li><code>volumes_from</code> now works properly with containers as well as services</li><li>Fixed a race condition when recreating containers in <code>fig up</code></li></ul><p>Thanks @ryanbrainard and @d11wtq!</p><h2 class=scroll-mt-20 id=050><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#050">0.5.0</a></h2><p>(2014-07-11)</p><ul><li><p>Fig now starts links when you run <code>fig run</code> or <code>fig up</code>.</p><p>For example, if you have a <code>web</code> service which depends on a <code>db</code> service, <code>fig run web ...</code> will start the <code>db</code> service.</p></li><li><p>Environment variables can now be resolved from the environment that Fig is running in. Just specify it as a blank variable in your <code>fig.yml</code> and, if set, it'll be resolved:</p><div class="group relative"><button x-data="{ code: 'ZW52aXJvbm1lbnQ6CiAgUkFDS19FTlY6IGRldmVsb3BtZW50CiAgU0VTU0lPTl9TRUNSRVQ6', copying: false }" class="absolute top-3 right-3 text-gray-light-300 dark:text-gray-dark-600" title=Copy @click="window.navigator.clipboard.writeText(atob(code).replaceAll(/^\$\s*/gm, ''));
    copying = true;
    setTimeout(() => copying = false, 2000);">
<span :class="{ 'group-hover:block' : !copying }" class="hidden icon-svg"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M3e2-2e2q-24 0-42-18t-18-42v-560q0-24 18-42t42-18h440q24 0 42 18t18 42v560q0 24-18 42t-42 18H3e2zM180-80q-24 0-42-18t-18-42v-590q0-13 8.5-21.5T150-760t21.5 8.5T180-730v590h470q13 0 21.5 8.5T680-110t-8.5 21.5T650-80H180z"/></svg></span>
<span :class="{ 'group-hover:block' : copying }" class="hidden icon-svg"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="m421-389-98-98q-9-9-22-9t-23 10q-9 9-9 22t9 22l122 123q9 9 21 9t21-9l239-239q10-10 10-23t-10-23q-10-9-23.5-8.5T635-603L421-389zm59 309q-82 0-155-31.5t-127.5-86-86-127.5T80-480q0-83 31.5-156t86-127T325-848.5 480-880q83 0 156 31.5T763-763t85.5 127T880-480q0 82-31.5 155T763-197.5t-127 86T480-80z"/></svg></span></button><div class="syntax-light dark:syntax-dark"><div class=highlight><pre tabindex=0 class=chroma><code class=language-yaml data-lang=yaml><span class=line><span class=cl><span class=nt>environment</span><span class=p>:</span><span class=w>
</span></span></span><span class=line><span class=cl><span class=w>  </span><span class=nt>RACK_ENV</span><span class=p>:</span><span class=w> </span><span class=l>development</span><span class=w>
</span></span></span><span class=line><span class=cl><span class=w>  </span><span class=l>SESSION_SECRET:</span></span></span></code></pre></div></div></div></li><li><p><code>volumes_from</code> is now supported in <code>fig.yml</code>. All of the volumes from the specified services and containers will be mounted:</p><div class="group relative"><button x-data="{ code: 'dm9sdW1lc19mcm9tOgogLSBzZXJ2aWNlX25hbWUKIC0gY29udGFpbmVyX25hbWU=', copying: false }" class="absolute top-3 right-3 text-gray-light-300 dark:text-gray-dark-600" title=Copy @click="window.navigator.clipboard.writeText(atob(code).replaceAll(/^\$\s*/gm, ''));
    copying = true;
    setTimeout(() => copying = false, 2000);">
<span :class="{ 'group-hover:block' : !copying }" class="hidden icon-svg"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M3e2-2e2q-24 0-42-18t-18-42v-560q0-24 18-42t42-18h440q24 0 42 18t18 42v560q0 24-18 42t-42 18H3e2zM180-80q-24 0-42-18t-18-42v-590q0-13 8.5-21.5T150-760t21.5 8.5T180-730v590h470q13 0 21.5 8.5T680-110t-8.5 21.5T650-80H180z"/></svg></span>
<span :class="{ 'group-hover:block' : copying }" class="hidden icon-svg"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="m421-389-98-98q-9-9-22-9t-23 10q-9 9-9 22t9 22l122 123q9 9 21 9t21-9l239-239q10-10 10-23t-10-23q-10-9-23.5-8.5T635-603L421-389zm59 309q-82 0-155-31.5t-127.5-86-86-127.5T80-480q0-83 31.5-156t86-127T325-848.5 480-880q83 0 156 31.5T763-763t85.5 127T880-480q0 82-31.5 155T763-197.5t-127 86T480-80z"/></svg></span></button><div class="syntax-light dark:syntax-dark"><div class=highlight><pre tabindex=0 class=chroma><code class=language-yaml data-lang=yaml><span class=line><span class=cl><span class=nt>volumes_from</span><span class=p>:</span><span class=w>
</span></span></span><span class=line><span class=cl><span class=w> </span>- <span class=l>service_name</span><span class=w>
</span></span></span><span class=line><span class=cl><span class=w> </span>- <span class=l>container_name</span></span></span></code></pre></div></div></div></li><li><p>A host address can now be specified in <code>ports</code>:</p><div class="group relative"><button x-data="{ code: 'cG9ydHM6CiAtICIwLjAuMC4wOjgwMDA6ODAwMCIKIC0gIjEyNy4wLjAuMTo4MDAxOjgwMDEi', copying: false }" class="absolute top-3 right-3 text-gray-light-300 dark:text-gray-dark-600" title=Copy @click="window.navigator.clipboard.writeText(atob(code).replaceAll(/^\$\s*/gm, ''));
    copying = true;
    setTimeout(() => copying = false, 2000);">
<span :class="{ 'group-hover:block' : !copying }" class="hidden icon-svg"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M3e2-2e2q-24 0-42-18t-18-42v-560q0-24 18-42t42-18h440q24 0 42 18t18 42v560q0 24-18 42t-42 18H3e2zM180-80q-24 0-42-18t-18-42v-590q0-13 8.5-21.5T150-760t21.5 8.5T180-730v590h470q13 0 21.5 8.5T680-110t-8.5 21.5T650-80H180z"/></svg></span>
<span :class="{ 'group-hover:block' : copying }" class="hidden icon-svg"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="m421-389-98-98q-9-9-22-9t-23 10q-9 9-9 22t9 22l122 123q9 9 21 9t21-9l239-239q10-10 10-23t-10-23q-10-9-23.5-8.5T635-603L421-389zm59 309q-82 0-155-31.5t-127.5-86-86-127.5T80-480q0-83 31.5-156t86-127T325-848.5 480-880q83 0 156 31.5T763-763t85.5 127T880-480q0 82-31.5 155T763-197.5t-127 86T480-80z"/></svg></span></button><div class="syntax-light dark:syntax-dark"><div class=highlight><pre tabindex=0 class=chroma><code class=language-yaml data-lang=yaml><span class=line><span class=cl><span class=nt>ports</span><span class=p>:</span><span class=w>
</span></span></span><span class=line><span class=cl><span class=w> </span>- <span class=s2>&#34;0.0.0.0:8000:8000&#34;</span><span class=w>
</span></span></span><span class=line><span class=cl><span class=w> </span>- <span class=s2>&#34;127.0.0.1:8001:8001&#34;</span></span></span></code></pre></div></div></div></li><li><p>The <code>net</code> and <code>workdir</code> options are now supported in <code>fig.yml</code>.</p></li><li><p>The <code>hostname</code> option now works in the same way as the Docker CLI, splitting out into a <code>domainname</code> option.</p></li><li><p>TTY behavior is far more robust, and resizes are supported correctly.</p></li><li><p>Load YAML files safely.</p></li></ul><p>Thanks to @d11wtq, @ryanbrainard, @rail44, @j0hnsmith, @binarin, @Elemecca, @mozz100 and @marksteve for their help with this release!</p><h2 class=scroll-mt-20 id=042><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#042">0.4.2</a></h2><p>(2014-06-18)</p><ul><li>Fix various encoding errors when using <code>fig run</code>, <code>fig up</code> and <code>fig build</code>.</li></ul><h2 class=scroll-mt-20 id=041><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#041">0.4.1</a></h2><p>(2014-05-08)</p><ul><li>Add support for Docker 0.11.0. (Thanks @marksteve!)</li><li>Make project name configurable. (Thanks @jefmathiot!)</li><li>Return correct exit code from <code>fig run</code>.</li></ul><h2 class=scroll-mt-20 id=040><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#040">0.4.0</a></h2><p>(2014-04-29)</p><ul><li>Support Docker 0.9 and 0.10</li><li>Display progress bars correctly when pulling images (no more ski slopes)</li><li><code>fig up</code> now stops all services when any container exits</li><li>Added support for the <code>privileged</code> config option in fig.yml (thanks @kvz!)</li><li>Shortened and aligned log prefixes in <code>fig up</code> output</li><li>Only containers started with <code>fig run</code> link back to their own service</li><li>Handle UTF-8 correctly when streaming <code>fig build/run/up</code> output (thanks @mauvm and @shanejonas!)</li><li>Error message improvements</li></ul><h2 class=scroll-mt-20 id=032><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#032">0.3.2</a></h2><p>(2014-03-05)</p><ul><li>Added an <code>--rm</code> option to <code>fig run</code>. (Thanks @marksteve!)</li><li>Added an <code>expose</code> option to <code>fig.yml</code>.</li></ul><h2 class=scroll-mt-20 id=031><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#031">0.3.1</a></h2><p>(2014-03-04)</p><ul><li>Added contribution instructions. (Thanks @kvz!)</li><li>Fixed <code>fig rm</code> throwing an error.</li><li>Fixed a bug in <code>fig ps</code> on Docker 0.8.1 when there is a container with no command.</li></ul><h2 class=scroll-mt-20 id=030><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#030">0.3.0</a></h2><p>(2014-03-03)</p><ul><li>We now ship binaries for OS X and Linux. No more having to install with Pip!</li><li>Add <code>-f</code> flag to specify alternate <code>fig.yml</code> files</li><li>Add support for custom link names</li><li>Fix a bug where recreating would sometimes hang</li><li>Update docker-py to support Docker 0.8.0.</li><li>Various documentation improvements</li><li>Various error message improvements</li></ul><p>Thanks @marksteve, @Gazler and @teozkr!</p><h2 class=scroll-mt-20 id=022><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#022">0.2.2</a></h2><p>(2014-02-17)</p><ul><li>Resolve dependencies using Cormen/Tarjan topological sort</li><li>Fix <code>fig up</code> not printing log output</li><li>Stop containers in reverse order to starting</li><li>Fix scale command not binding ports</li></ul><p>Thanks to @barnybug and @dustinlacewell for their work on this release.</p><h2 class=scroll-mt-20 id=021><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#021">0.2.1</a></h2><p>(2014-02-04)</p><ul><li>General improvements to error reporting (#77, #79)</li></ul><h2 class=scroll-mt-20 id=020><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#020">0.2.0</a></h2><p>(2014-01-31)</p><ul><li>Link services to themselves so run commands can access the running service. (#67)</li><li>Much better documentation.</li><li>Make service dependency resolution more reliable. (#48)</li><li>Load Fig configurations with a <code>.yaml</code> extension. (#58)</li></ul><p>Big thanks to @cameronmaske, @mrchrisadams and @damianmoore for their help with this release.</p><h2 class=scroll-mt-20 id=014><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#014">0.1.4</a></h2><p>(2014-01-27)</p><ul><li>Add a link alias without the project name. This makes the environment variables a little shorter: <code>REDIS_1_PORT_6379_TCP_ADDR</code>. (#54)</li></ul><h2 class=scroll-mt-20 id=013><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#013">0.1.3</a></h2><p>(2014-01-23)</p><ul><li>Fix ports sometimes being configured incorrectly. (#46)</li><li>Fix log output sometimes not displaying. (#47)</li></ul><h2 class=scroll-mt-20 id=012><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#012">0.1.2</a></h2><p>(2014-01-22)</p><ul><li>Add <code>-T</code> option to <code>fig run</code> to disable pseudo-TTY. (#34)</li><li>Fix <code>fig up</code> requiring the ubuntu image to be pulled to recreate containers. (#33) Thanks @cameronmaske!</li><li>Improve reliability, fix arrow keys and fix a race condition in <code>fig run</code>. (#34, #39, #40)</li></ul><h2 class=scroll-mt-20 id=011><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#011">0.1.1</a></h2><p>(2014-01-17)</p><ul><li>Fix bug where ports were not exposed correctly (#29). Thanks @dustinlacewell!</li></ul><h2 class=scroll-mt-20 id=010><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#010">0.1.0</a></h2><p>(2014-01-16)</p><ul><li>Containers are recreated on each <code>fig up</code>, ensuring config is up-to-date with <code>fig.yml</code> (#2)</li><li>Add <code>fig scale</code> command (#9)</li><li>Use <code>DOCKER_HOST</code> environment variable to find Docker daemon, for consistency with the official Docker client (was previously <code>DOCKER_URL</code>) (#19)</li><li>Truncate long commands in <code>fig ps</code> (#18)</li><li>Fill out CLI help banners for commands (#15, #16)</li><li>Show a friendlier error when <code>fig.yml</code> is missing (#4)</li><li>Fix bug with <code>fig build</code> logging (#3)</li><li>Fix bug where builds would time out if a step took a long time without generating output (#6)</li><li>Fix bug where streaming container output over the Unix socket raised an error (#7)</li></ul><p>Big thanks to @tomstuart, @EnTeQuAk, @schickling, @aronasorman and @GeoffreyPlitt.</p><h2 class=scroll-mt-20 id=002><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#002">0.0.2</a></h2><p>(2014-01-02)</p><ul><li>Improve documentation</li><li>Try to connect to Docker on <code>tcp://localdocker:4243</code> and a UNIX socket in addition to <code>localhost</code>.</li><li>Improve <code>fig up</code> behavior</li><li>Add confirmation prompt to <code>fig rm</code></li><li>Add <code>fig build</code> command</li></ul><h2 class=scroll-mt-20 id=001><a class="text-black dark:text-white no-underline hover:underline" href="release-notes.html#001">0.0.1</a></h2><p>(2013-12-20)</p><p>Initial release.</p></article></div><div class="sticky top-16 h-screen w-[300px] shrink grow overflow-y-scroll lg:hidden"><aside class="py-4 space-y-4"><p class="flex items-center gap-2"><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M150-120q-13 0-21.5-8.5T120-150v-73q0-12 5-23.5t13-19.5l557-556q8-8 19-12.5t23-4.5q11 0 22 4.5t20 12.5l44 44q9 9 13 20t4 22-4.5 22.5T823-694L266-138q-8 8-19.5 13t-23.5 5h-73zm589-577 40-40-41-41-40 40 41 41z"/></svg></span>
<a class=link target=_blank rel=noopener href=https://github.com/docker/docs/edit/main/content/compose/release-notes.md>Edit this page
<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></p><p class="flex items-center gap-2"><span class=icon-svg><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="m378-332 363-363q9.067-9 21.533-9Q775-704 784-694.947q9 9.052 9 21.5Q793-661 784-652L399-267q-9 9-21 9t-21-9L175-449q-9-9.067-8.5-21.533Q167-483 176.053-492q9.052-9 21.5-9Q210-501 219-492l159 160z"/></svg></span>
<a class=link target=_blank rel=noopener href="https://github.com/docker/docs/issues/new?template=doc_issue.yml&location=https%3a%2f%2fdocs.docker.com%2fcompose%2frelease-notes%2f&labels=status%2Ftriage">Request changes
<span class="icon-svg icon-xs icon-top"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 -960 960 960"><path d="M180-120q-24 0-42-18t-18-42v-6e2q0-24 18-42t42-18h249q12.75.0 21.375 8.675 8.625 8.676 8.625 21.5.0 12.825-8.625 21.325T429-780H180v6e2h6e2v-249q0-12.75 8.675-21.375 8.676-8.625 21.5-8.625 12.825.0 21.325 8.625T840-429v249q0 24-18 42t-42 18H180zm6e2-617L403-360q-9 9-21 8.5t-21-9.5-9-21 9-21l377-377H549q-12.75.0-21.375-8.675-8.625-8.676-8.625-21.5.0-12.825 8.625-21.325T549-840h291v291q0 12.75-8.675 21.375-8.676 8.625-21.5 8.625-12.825.0-21.325-8.625T780-549v-188z"/></svg></span></a></a></p><div><div class="text-lg pb-2">Contents</div><nav id=TableOfContents><ul><li><a href="release-notes.html#2246">2.24.6</a><ul><li><a href="release-notes.html#update">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2245">2.24.5</a><ul><li><a href="release-notes.html#bug-fixes-and-enhancements-1">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2244">2.24.4</a><ul><li><a href="release-notes.html#update-1">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-2">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2243">2.24.3</a><ul><li><a href="release-notes.html#update-2">Update</a></li></ul></li><li><a href="release-notes.html#2242">2.24.2</a><ul><li><a href="release-notes.html#update-3">Update</a></li></ul></li><li><a href="release-notes.html#2241">2.24.1</a><ul><li><a href="release-notes.html#update-4">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-3">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2240">2.24.0</a><ul><li><a href="release-notes.html#update-5">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-4">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2233">2.23.3</a><ul><li><a href="release-notes.html#update-6">Update</a></li></ul></li><li><a href="release-notes.html#2232">2.23.2</a><ul><li><a href="release-notes.html#update-7">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-5">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2231">2.23.1</a><ul><li><a href="release-notes.html#update-8">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-6">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2230">2.23.0</a><ul><li><a href="release-notes.html#update-9">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-7">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2220">2.22.0</a><ul><li><a href="release-notes.html#update-10">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-8">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2210">2.21.0</a><ul><li><a href="release-notes.html#update-11">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-9">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2203">2.20.3</a><ul><li><a href="release-notes.html#update-12">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-10">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2202">2.20.2</a><ul><li><a href="release-notes.html#bug-fixes-and-enhancements-11">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2201">2.20.1</a><ul><li><a href="release-notes.html#update-13">Update</a></li></ul></li><li><a href="release-notes.html#2200">2.20.0</a><ul><li><a href="release-notes.html#update-14">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-12">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2191">2.19.1</a><ul><li><a href="release-notes.html#update-15">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-13">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2190">2.19.0</a><ul><li><a href="release-notes.html#update-16">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-14">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2181">2.18.1</a><ul><li><a href="release-notes.html#bug-fixes-and-enhancements-15">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2180">2.18.0</a><ul><li><a href="release-notes.html#update-17">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-16">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2172">2.17.2</a><ul><li><a href="release-notes.html#update-18">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-17">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2171">2.17.1</a><ul><li><a href="release-notes.html#update-19">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-18">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2170">2.17.0</a><ul><li><a href="release-notes.html#upgrade-notes">Upgrade notes</a></li><li><a href="release-notes.html#update-20">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-19">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2160">2.16.0</a><ul><li><a href="release-notes.html#update-21">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-20">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2151">2.15.1</a><ul><li><a href="release-notes.html#update-22">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-21">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2150">2.15.0</a><ul><li><a href="release-notes.html#update-23">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-22">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2142">2.14.2</a><ul><li><a href="release-notes.html#update-24">Update</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-23">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2141">2.14.1</a><ul><li><a href="release-notes.html#updates">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-24">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2140">2.14.0</a><ul><li><a href="release-notes.html#updates-1">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-25">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2130">2.13.0</a><ul><li><a href="release-notes.html#updates-2">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-26">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2122">2.12.2</a><ul><li><a href="release-notes.html#updates-3">Updates</a></li></ul></li><li><a href="release-notes.html#2121">2.12.1</a><ul><li><a href="release-notes.html#security">Security</a></li></ul></li><li><a href="release-notes.html#2120">2.12.0</a><ul><li><a href="release-notes.html#updates-4">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-27">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2112">2.11.2</a><ul><li><a href="release-notes.html#updates-5">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-28">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2111">2.11.1</a><ul><li><a href="release-notes.html#bug-fixes-and-enhancements-29">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2110">2.11.0</a><ul><li><a href="release-notes.html#updates-6">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-30">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2102">2.10.2</a><ul><li><a href="release-notes.html#bug-fixes-and-enhancements-31">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2101">2.10.1</a><ul><li><a href="release-notes.html#updates-7">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-32">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#2100">2.10.0</a><ul><li><a href="release-notes.html#new">New</a></li><li><a href="release-notes.html#updates-8">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-33">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#290">2.9.0</a><ul><li><a href="release-notes.html#updates-9">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-34">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#280">2.8.0</a><ul><li><a href="release-notes.html#new-1">New</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-35">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#270">2.7.0</a><ul><li><a href="release-notes.html#new-2">New</a></li><li><a href="release-notes.html#updates-10">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-36">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#261">2.6.1</a><ul><li><a href="release-notes.html#new-3">New</a></li><li><a href="release-notes.html#updates-11">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-37">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#260">2.6.0</a><ul><li><a href="release-notes.html#new-4">New</a></li><li><a href="release-notes.html#updates-12">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-38">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#251">2.5.1</a><ul><li><a href="release-notes.html#updates-13">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-39">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#250">2.5.0</a><ul><li><a href="release-notes.html#bug-fixes-and-enhancements-40">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#241">2.4.1</a><ul><li><a href="release-notes.html#bug-fixes-and-enhancements-41">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#240">2.4.0</a><ul><li><a href="release-notes.html#updates-14">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-42">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#234">2.3.4</a><ul><li><a href="release-notes.html#new-5">New</a></li><li><a href="release-notes.html#removed">Removed</a></li><li><a href="release-notes.html#updates-15">Updates</a></li><li><a href="release-notes.html#bug-fixes-and-enhancements-43">Bug fixes and enhancements</a></li></ul></li><li><a href="release-notes.html#other-releases">Other Releases</a></li><li><a href="release-notes.html#1292">1.29.2</a><ul><li><a href="release-notes.html#miscellaneous">Miscellaneous</a></li></ul></li><li><a href="release-notes.html#1291">1.29.1</a><ul><li><a href="release-notes.html#bugs">Bugs</a></li></ul></li><li><a href="release-notes.html#1290">1.29.0</a><ul><li><a href="release-notes.html#features">Features</a></li><li><a href="release-notes.html#miscellaneous-1">Miscellaneous</a></li></ul></li><li><a href="release-notes.html#1286">1.28.6</a><ul><li><a href="release-notes.html#bug-fixes">Bug fixes</a></li><li><a href="release-notes.html#miscellaneous-2">Miscellaneous</a></li></ul></li><li><a href="release-notes.html#1285">1.28.5</a><ul><li><a href="release-notes.html#bugs-1">Bugs</a></li></ul></li><li><a href="release-notes.html#1284">1.28.4</a><ul><li><a href="release-notes.html#bug-fixes-1">Bug fixes</a></li><li><a href="release-notes.html#miscellaneous-3">Miscellaneous</a></li></ul></li><li><a href="release-notes.html#1283">1.28.3</a><ul><li><a href="release-notes.html#bug-fixes-2">Bug fixes</a></li><li><a href="release-notes.html#miscellaneous-4">Miscellaneous</a></li></ul></li><li><a href="release-notes.html#1282">1.28.2</a><ul><li><a href="release-notes.html#bug-fixes-3">Bug fixes</a></li><li><a href="release-notes.html#miscellaneous-5">Miscellaneous</a></li></ul></li><li><a href="release-notes.html#1280">1.28.0</a><ul><li><a href="release-notes.html#features-1">Features</a></li><li><a href="release-notes.html#bug-fixes-4">Bug fixes</a></li><li><a href="release-notes.html#miscellaneous-6">Miscellaneous</a></li></ul></li><li><a href="release-notes.html#1274">1.27.4</a><ul><li><a href="release-notes.html#bug-fixes-5">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1273">1.27.3</a><ul><li><a href="release-notes.html#bug-fixes-6">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1272">1.27.2</a><ul><li><a href="release-notes.html#bug-fixes-7">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1271">1.27.1</a><ul><li><a href="release-notes.html#bug-fixes-8">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1270">1.27.0</a><ul><li><a href="release-notes.html#features-2">Features</a></li><li><a href="release-notes.html#bug-fixes-9">Bug fixes</a></li><li><a href="release-notes.html#miscellaneous-7">Miscellaneous</a></li></ul></li><li><a href="release-notes.html#1262">1.26.2</a><ul><li><a href="release-notes.html#bug-fixes-10">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1261">1.26.1</a><ul><li><a href="release-notes.html#features-3">Features</a></li><li><a href="release-notes.html#bug-fixes-11">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1260">1.26.0</a><ul><li><a href="release-notes.html#features-4">Features</a></li><li><a href="release-notes.html#bug-fixes-12">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1255">1.25.5</a><ul><li><a href="release-notes.html#features-5">Features</a></li></ul></li><li><a href="release-notes.html#1254">1.25.4</a><ul><li><a href="release-notes.html#bug-fixes-13">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1253">1.25.3</a><ul><li><a href="release-notes.html#bug-fixes-14">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1252">1.25.2</a><ul><li><a href="release-notes.html#new-features">New features</a></li><li><a href="release-notes.html#bug-fixes-15">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1251">1.25.1</a><ul><li><a href="release-notes.html#bugfixes">Bugfixes</a></li></ul></li><li><a href="release-notes.html#1250">1.25.0</a><ul><li><a href="release-notes.html#new-features-1">New features</a></li><li><a href="release-notes.html#bug-fixes-16">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1241">1.24.1</a></li><li><a href="release-notes.html#1240">1.24.0</a><ul><li><a href="release-notes.html#features-6">Features</a></li><li><a href="release-notes.html#bug-fixes-17">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1232">1.23.2</a><ul><li><a href="release-notes.html#bug-fixes-18">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1231">1.23.1</a><ul><li><a href="release-notes.html#bug-fixes-19">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1230">1.23.0</a><ul><li><a href="release-notes.html#important-note">Important note</a></li><li><a href="release-notes.html#features-7">Features</a></li><li><a href="release-notes.html#bug-fixes-20">Bug fixes</a></li><li><a href="release-notes.html#miscellaneous-8">Miscellaneous</a></li></ul></li><li><a href="release-notes.html#1220">1.22.0</a><ul><li><a href="release-notes.html#new-features-2">New features</a></li><li><a href="release-notes.html#bug-fixes-21">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1212">1.21.2</a><ul><li><a href="release-notes.html#bug-fixes-22">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1211">1.21.1</a><ul><li><a href="release-notes.html#bug-fixes-23">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1210">1.21.0</a><ul><li><a href="release-notes.html#new-features-3">New features</a></li><li><a href="release-notes.html#bug-fixes-24">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1200">1.20.0</a><ul><li><a href="release-notes.html#new-features-4">New features</a></li><li><a href="release-notes.html#bug-fixes-25">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1190">1.19.0</a><ul><li><a href="release-notes.html#breaking-changes">Breaking changes</a></li><li><a href="release-notes.html#new-features-5">New features</a></li><li><a href="release-notes.html#bug-fixes-26">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1180">1.18.0</a><ul><li><a href="release-notes.html#new-features-6">New features</a></li><li><a href="release-notes.html#bug-fixes-27">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1170">1.17.0</a><ul><li><a href="release-notes.html#new-features-7">New features</a></li><li><a href="release-notes.html#bug-fixes-28">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1160">1.16.0</a><ul><li><a href="release-notes.html#new-features-8">New features</a></li><li><a href="release-notes.html#bug-fixes-29">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1150">1.15.0</a><ul><li><a href="release-notes.html#new-features-9">New features</a></li><li><a href="release-notes.html#bug-fixes-30">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1140">1.14.0</a><ul><li><a href="release-notes.html#new-features-10">New features</a></li><li><a href="release-notes.html#bug-fixes-31">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1130">1.13.0</a><ul><li><a href="release-notes.html#breaking-changes-1">Breaking changes</a></li><li><a href="release-notes.html#new-features-11">New features</a></li><li><a href="release-notes.html#bug-fixes-32">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1120">1.12.0</a><ul><li><a href="release-notes.html#new-features-12">New features</a></li><li><a href="release-notes.html#bug-fixes-33">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1112">1.11.2</a><ul><li><a href="release-notes.html#bug-fixes-34">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1111">1.11.1</a><ul><li><a href="release-notes.html#bug-fixes-35">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1110">1.11.0</a><ul><li><a href="release-notes.html#new-features-13">New Features</a></li><li><a href="release-notes.html#bug-fixes-36">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1101">1.10.1</a><ul><li><a href="release-notes.html#bug-fixes-37">Bug fixes</a></li></ul></li><li><a href="release-notes.html#1100">1.10.0</a><ul><li><a href="release-notes.html#new-features-14">New Features</a></li><li><a href="release-notes.html#bug-fixes-38">Bug fixes</a></li></ul></li><li><a href="release-notes.html#190">1.9.0</a><ul><li><a href="release-notes.html#new-features-15">New Features</a></li><li><a href="release-notes.html#bug-fixes-39">Bug fixes</a></li></ul></li><li><a href="release-notes.html#181">1.8.1</a><ul><li><a href="release-notes.html#bug-fixes-40">Bug fixes</a></li></ul></li><li><a href="release-notes.html#180">1.8.0</a><ul><li><a href="release-notes.html#breaking-changes-2">Breaking Changes</a></li><li><a href="release-notes.html#new-features-16">New Features</a></li><li><a href="release-notes.html#bug-fixes-41">Bug fixes</a></li></ul></li><li><a href="release-notes.html#171">1.7.1</a><ul><li><a href="release-notes.html#bug-fixes-42">Bug fixes</a></li></ul></li><li><a href="release-notes.html#170">1.7.0</a><ul><li><a href="release-notes.html#breaking-changes-3">Breaking Changes</a></li><li><a href="release-notes.html#new-features-17">New Features</a></li><li><a href="release-notes.html#bug-fixes-43">Bug fixes</a></li></ul></li><li><a href="release-notes.html#162">1.6.2</a></li><li><a href="release-notes.html#161">1.6.1</a><ul><li><a href="release-notes.html#bug-fixes-44">Bug fixes</a></li></ul></li><li><a href="release-notes.html#160">1.6.0</a><ul><li><a href="release-notes.html#major-features">Major Features</a></li><li><a href="release-notes.html#new-features-18">New Features</a></li><li><a href="release-notes.html#bug-fixes-45">Bug fixes</a></li></ul></li><li><a href="release-notes.html#152">1.5.2</a></li><li><a href="release-notes.html#151">1.5.1</a></li><li><a href="release-notes.html#150">1.5.0</a><ul><li><a href="release-notes.html#breaking-changes-4">Breaking changes</a></li><li><a href="release-notes.html#major-features-1">Major features</a></li><li><a href="release-notes.html#new-features-19">New features</a></li><li><a href="release-notes.html#bug-fixes-46">Bug fixes</a></li></ul></li><li><a href="release-notes.html#142">1.4.2</a></li><li><a href="release-notes.html#141">1.4.1</a><ul><li><a href="release-notes.html#bug-fixes-47">Bug fixes</a></li></ul></li><li><a href="release-notes.html#140">1.4.0</a></li><li><a href="release-notes.html#133">1.3.3</a><ul><li><a href="release-notes.html#regression-fixes">Regression fixes</a></li></ul></li><li><a href="release-notes.html#132">1.3.2</a><ul><li><a href="release-notes.html#bug-fixes-48">Bug fixes</a></li></ul></li><li><a href="release-notes.html#131">1.3.1</a><ul><li><a href="release-notes.html#bug-fixes-49">Bug fixes</a></li></ul></li><li><a href="release-notes.html#130">1.3.0</a><ul><li><a href="release-notes.html#important-notes">Important notes</a></li><li><a href="release-notes.html#improvements">Improvements</a></li><li><a href="release-notes.html#new-features-20">New features</a></li><li><a href="release-notes.html#bug-fixes-50">Bug fixes</a></li></ul></li><li><a href="release-notes.html#120">1.2.0</a></li><li><a href="release-notes.html#110">1.1.0</a></li><li><a href="release-notes.html#101">1.0.1</a></li><li><a href="release-notes.html#100">1.0.0</a></li><li><a href="release-notes.html#052">0.5.2</a></li><li><a href="release-notes.html#051">0.5.1</a></li><li><a href="release-notes.html#050">0.5.0</a></li><li><a href="release-notes.html#042">0.4.2</a></li><li><a href="release-notes.html#041">0.4.1</a></li><li><a href="release-notes.html#040">0.4.0</a></li><li><a href="release-notes.html#032">0.3.2</a></li><li><a href="release-notes.html#031">0.3.1</a></li><li><a href="release-notes.html#030">0.3.0</a></li><li><a href="release-notes.html#022">0.2.2</a></li><li><a href="release-notes.html#021">0.2.1</a></li><li><a href="release-notes.html#020">0.2.0</a></li><li><a href="release-notes.html#014">0.1.4</a></li><li><a href="release-notes.html#013">0.1.3</a></li><li><a href="release-notes.html#012">0.1.2</a></li><li><a href="release-notes.html#011">0.1.1</a></li><li><a href="release-notes.html#010">0.1.0</a></li><li><a href="release-notes.html#002">0.0.2</a></li><li><a href="release-notes.html#001">0.0.1</a></li></ul></nav></div></aside></div></main><footer><div class="flex justify-center py-20 px-4 bg-gray-light-200/50 dark:bg-gray-dark-300/50"><div class="flex w-[1200px] flex-col gap-10"><div class="flex sm:flex-col gap-4 items-center justify-evenly"><a class="underline-offset-2 hover:underline" href=https://www.docker.com/>Product offerings</a>
<a class="underline-offset-2 hover:underline" href=https://www.docker.com/pricing/>Pricing</a>
<a class="underline-offset-2 hover:underline" href=https://www.docker.com/company/>About us</a>
<a class="underline-offset-2 hover:underline" href=https://www.docker.com/support/>Support</a>
<a class="underline-offset-2 hover:underline" href=https://github.com/docker/docs/blob/main/CONTRIBUTING.md>Contribute</a></div><hr class="text-divider-light dark:text-divider-dark"><div class="grid grid-cols-3 place-items-center gap-8 md:grid-cols-1"><p class=text-sm>Copyright © 2013-2024 Docker Inc. All rights reserved.</p><div class="flex gap-4"><a class="h-8 w-8 rounded-full fill-blue-light dark:fill-blue-dark" title="X (Twitter)" href=http://twitter.com/docker/><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 29 29"><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><path class="cls-1" d="M14.62 13.41l-3.3-4.62H9.56l4.09 5.72.51.72 3.51 4.91h1.76l-4.29-6.01-.52-.72z"/><path class="cls-1" d="M14.5.0A14.5 14.5.0 1029 14.5 14.5 14.5.0 0014.5.0zm2.63 20.94-3.55-5.05-4.43 5.05H8l5.07-5.77L8 7.94h3.87l3.36 4.78 4.2-4.78h1.15l-4.84 5.51L21 20.94z"/></g></g></svg>
</a><a class="h-8 w-8 rounded-full fill-blue-light dark:fill-blue-dark" title=LinkedIn href=https://www.linkedin.com/company/docker><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 24c6.627.0 12-5.373 12-12S18.627.0 12 0 0 5.373.0 12s5.373 12 12 12zM8.176 9.66H5.174v9.035h3.002V9.66zm-3.18-2.795c0-.885.671-1.56 1.699-1.56 1.027.0 1.66.675 1.679 1.56.0.867-.652 1.562-1.7 1.562h-.018c-1.008.0-1.66-.695-1.66-1.562zm7.845 4.074c.398-.614 1.112-1.49 2.706-1.49 1.976.0 3.457 1.29 3.457 4.065v5.18h-3.002v-4.833c0-1.214-.435-2.043-1.522-2.043-.829.0-1.323.559-1.54 1.098-.08.194-.099.463-.099.733v5.046H9.838s.04-8.187.0-9.035h3.003v1.28z"/></svg>
</a><a class="h-8 w-8 rounded-full fill-blue-light dark:fill-blue-dark" title=Instagram href=https://www.instagram.com/dockerinc/><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 24c6.627.0 12-5.373 12-12S18.627.0 12 0 0 5.373.0 12s5.373 12 12 12zM6.984 4.774c.485-.19 1.04-.32 1.853-.359.814-.039 1.074-.048 3.148-.052 2.075-.004 2.335.004 3.15.04.812.035 1.368.164 1.853.352.503.193.93.454 1.355.878s.687.849.883 1.35c.19.486.32 1.041.359 1.854.038.815.048 1.074.052 3.148s-.005 2.335-.04 3.15c-.036.812-.164 1.368-.352 1.854a3.737 3.737.0 01-.878 1.354 3.746 3.746.0 01-1.35.884c-.486.19-1.04.32-1.853.358-.815.039-1.075.048-3.15.052-2.073.004-2.333-.004-3.148-.04-.813-.036-1.369-.163-1.854-.351a3.746 3.746.0 01-1.355-.878 3.74 3.74.0 01-.883-1.352c-.19-.485-.32-1.04-.359-1.852-.039-.815-.048-1.075-.052-3.15-.004-2.073.004-2.333.04-3.148.036-.813.163-1.368.351-1.855.195-.502.455-.929.879-1.354a3.736 3.736.0 011.35-.883zm.523 13.189c.27.103.674.227 1.419.26.806.034 1.047.042 3.086.038 2.04-.004 2.28-.012 3.086-.05.744-.036 1.148-.16 1.417-.266.357-.14.61-.306.877-.573.267-.268.432-.522.57-.879.104-.27.228-.674.26-1.419.035-.805.043-1.047.039-3.086-.004-2.039-.012-2.28-.05-3.086-.036-.744-.16-1.149-.266-1.417a2.366 2.366.0 00-.573-.878 2.364 2.364.0 00-.88-.57c-.269-.103-.674-.227-1.418-.26-.805-.034-1.047-.042-3.086-.038-2.04.004-2.28.012-3.086.05-.744.036-1.148.16-1.417.266a2.38 2.38.0 00-.878.573 2.37 2.37.0 00-.57.88c-.103.269-.227.674-.26 1.418-.034.805-.042 1.047-.038 3.086.004 2.04.013 2.28.05 3.086.035.744.161 1.148.266 1.418.14.356.305.61.573.877.268.266.522.431.88.57zm8.563-9.131a.917.917.0 11-.003-1.833.917.917.0 01.003 1.833zm-4.063 7.09a3.921 3.921.0 11-.015-7.843 3.921 3.921.0 01.015 7.842zm-.012-6.468a2.546 2.546.0 10.01 5.092 2.546 2.546.0 00-.01-5.092z"/></svg>
</a><a class="h-8 w-8 rounded-full fill-blue-light dark:fill-blue-dark" title=YouTube href=http://www.youtube.com/user/dockerrun><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 24c6.627.0 12-5.373 12-12S18.627.0 12 0 0 5.373.0 12s5.373 12 12 12zm7.543-15.79a1.971 1.971.0 00-1.392-1.39C16.923 6.49 12 6.49 12 6.49s-4.924.0-6.152.33A1.972 1.972.0 004.457 8.21c-.33 1.229-.33 3.79-.33 3.79s0 2.562.33 3.79c.18.677.714 1.21 1.391 1.391 1.228.329 6.151.329 6.151.329s4.923.0 6.15-.329a1.972 1.972.0 001.393-1.392c.329-1.227.329-3.789.329-3.789s0-2.561-.33-3.79zm-9.117 6.151L14.516 12l-4.09-2.361v4.722z"/></svg>
</a><a class="h-8 w-8 rounded-full fill-blue-light dark:fill-blue-dark" title=Facebook href=https://www.facebook.com/docker.run><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M13.54 24c5.948-.736 10.552-5.807 10.552-11.954C24.092 5.393 18.699.0 12.046.0S0 5.393.0 12.046c0 5.842 4.158 10.712 9.677 11.813v-8.374H6.538v-3.573h3.139V9.188c0-3.098 1.845-4.81 4.669-4.81 1.352.0 2.767.242 2.767.242v3.042h-1.559c-1.536.0-2.014.953-2.014 1.93v2.32h3.428l-.548 3.573h-2.88V24z"/></svg></a></div><div class="flex items-center gap-4"><a class="underline-offset-2 hover:underline" title="Docker Terms of Service" href=https://www.docker.com/legal/docker-terms-service>Terms of Service</a>
<a class="underline-offset-2 hover:underline" title="Docker Systems Status Page" href=https://www.dockerstatus.com/>Status</a>
<a class="underline-offset-2 hover:underline" title="Docker Legal Terms" href=https://www.docker.com/legal>Legal</a></div></div></div></div></footer></body></html>